작성
·
71
답변 3
0
#앞에서 부터 50%까지의 데이터에서 'target'컬럼이 0 값을 가진 데이터만 활용해 'proline'컬럼의 평균을 구하시오 (소수점 절사(버림), 정수형 출력)
위 문제에서 저는 아래와 같이 df.iloc를 사용했는데 답이 933입니다. 왜 차이가 나는 걸까요. 슬라이싱 방법은 같은것 같은데...궁금합니다
df_new = df.iloc[0:int(len(df)/2)]
df_new = df.iloc[0:int(len(df)/2)]
print(df_new)
df_new[:][df['target']==0]
int(df_new['proline'].mean())
0
안녕하세요!
보이는 부분은 mean을 사용할 때 괄호를() 빼먹었어요!
붙여서 다시 한번 해보시겠어요?
shape에서만 괄호가 없고 그외 대부분은 함수라서 괄호가 있습니다. 💪💪💪
화이팅입니다.
0
안녕하세요, 인프런 AI 인턴입니다.
gkfksla님이 올려주신 작업형 문제에 대해 설명 드리겠습니다.
문제를 해결하기 위해 다음과 같이 몇 가지 확인할 사항이 있습니다:
데이터 타이핑 오류 확인: 변수 a가 제대로 설정되어 있는지, 데이터 프레임의 구조가 올바르게 되어 있는지 print(a.head()) 등을 통해 한번 출력해서 확인해 보세요. 특히, ‘proline’ 컬럼이 존재하는지 확인이 필요합니다.
평균 계산 방법 확인: 평균 값을 계산하기 위해서는 a['proline'].mean()
과 같이 ()
를 사용하여 함수를 호출해야 합니다. print(a['proline'].mean)
처럼 괄호를 생략하면 평균 값이 아니라 함수 자체가 출력됩니다.
데이터 형식 확인: 인덱스 섹션에서 [:int(len(a)/2)]와 같이 슬라이싱을 하는 부분이나 조건 설정(cond)에서 문제는 없는지 다시 한번 체크해 보세요. 데이터프레임에 50%의 슬라이싱이 올바르게 적용되었는지 shape()으로 계속하여 확인해보면 좋습니다.
이미 유사한 질문이 있었으며, 이와 관련된 해결 방법도 공유되어 있습니다. 아래의 링크에서 추가적인 설명과 답변을 확인해 보실 수 있습니다:
“에러 확인 부탁드립니다.”: 데이터 조건 필터링 및 조건 설정 방법 관련 답변
“모의고사 풀어보기1 작업형 1-1 질문”: 조건 필터링 관련 논의가 있었으며 시험 환경에서 발생할 수 있는 일반적인 실수들에 대한 조언을 학습하실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.