문제 7번, 풀이 코드 cond = df.iloc[1] > mean_2001 관련
저는 저 부분을 아래와 같이 for문 안에 if구문으로 처리 하고 싶었는데...
if구절에서 i 값을 찍어보면 처음 값만 데이터 그대로 나오고.. 그 담부턴 어뚱한 값이 나오네요..
뭘 잘못한걸까요? ㅠㅠ
mean_2001 = df.iloc[1].mean()
print(mean_2001)
#print(df.iloc[1])
#cond = df.iloc[1] > mean_2001
#sum(cond)
for i in list2001:
if i > mean_2001:
print(i)
답변 2
0
list2001 = df.loc[2001]
mean_2001 = df.iloc[1].mean()
print(mean_2001)
for i in list2001:
if i > mean_2001:
print(i)
정상적으로 출력되는데 list2001 값이 저와 다를까요?
0
안녕하세요, 인프런 AI 인턴입니다. 김지혜_남는건 사진이였어님.
귀하의 질문은 Python의 Pandas 라이브러리 사용과 관련이 있습니다. for문을 통해 각 값을 비교하려고 하는데, 그 과정에서 기대하지 않은 값이 출력되는 문제가 발생한 것 같습니다. 아래에서 그 원인과 해결 방안을 설명하겠습니다.
문제의 원인
for문에서 i 값을 반복하면서 list2001의 모든 값이 mean_2001보다 큰지를 확인하는 코드입니다. 여기서 list2001이 제대로 정의되지 않았거나, 원하는 값이 아닌 다른 값들을 가지고 있을 가능성이 있습니다. 일반적으로 Pandas의 데이터프레임에서 특정 열의 데이터를 리스트로 만드는 과정에서 혼동이 있을 수 있습니다.
해결 방안
먼저, list2001을 명확히 정의하여야 합니다. df.iloc[1]은 DataFrame의 두 번째 행을 가져옵니다. 이를 리스트로 변환하여 올바로 작동하게 하기 위해서는, 해당 행의 값을 정확히 리스트에 담아야 합니다. 다음과 같이 코드를 수정해보세요:
# df.iloc[1].values를 사용하여 1행의 값을 리스트로 변환
list2001 = df.iloc[1].values
mean_2001 = df.iloc[1].mean()
print(mean_2001)
for i in list2001:
if i > mean_2001:
print(i)
이렇게 하면, df.iloc[1].values를 통해 1행의 데이터가 정확히 리스트로 변환되며, for문을 돌면서 각 값이 mean_2001보다 큰지를 확인하는 것이 가능합니다.
추가 정보 및 유사 질문 링크
유사한 문제에 대한 더 많은 해결책은 다음 링크에서 확인할 수 있습니다:
- 4-3 type1 7번 문제: 데이터 프레임의 loc를 활용한 수식 간결화.
- 작업형1 모의문제3 7번 문제: 데이터 프레임 전치 후 데이터 접근 관련 문제.
이해를 돕기 위한 설명과 예제 코드를 포함하여 설명 드렸습니다. 추가적인 질문이나 문제가 해결되지 않았다면 언제든지 더 문의해 주세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
1유형 강의 다 나간 후 어떻게 할까요?
0
13
1
점수차가 많이 나는데 따로 하신게 있으신가요?
0
9
1
작업형1 모의문제 4번에 3)문제 질문
0
19
2
이상치 전처리 작업
0
25
2
평가결과값 문의
0
28
2
시계열 데이터 날짜와 시간 format
0
34
2
평가지표 F1 스코어 질문드립니다.
0
27
2
작업형 2 기출7회분에서
0
38
2
작업형2 모의문제1 (30강)
0
34
2
수강 기간 연장 문의 드립니다.
0
41
2
수강 계획과 관련해 문의 드립니다.
0
30
2
작업형1 - 연습문제 16~39 풀이는 몇강을 보면 되나요?
0
50
2
작업형 1 -연습문제 4-6
0
38
2
작업형 1 유형 부분
0
42
2
작업형 1 (삭제예정, 구 버전)
0
51
2
수강기간 연장 문의드립니다.
0
38
2
2유형 레이블 인코딩 VS 원핫 인코딩
0
37
3
수강기간 연장 문의드립니다.
0
44
2
인덱스 슬라이싱
0
37
2
질문 드립니다.
0
50
2
강의 내용 관련 질문드립니다~
0
46
2
수강 연장 문의
0
63
2
강의자료 일괄 다운로드
0
62
2
수강기간 연장 문의드립니다
0
48
2





