해결된 질문
작성
·
32
0
#모의문제 2 - 내가 푼 것
import pandas as pd
df=pd.read_csv('members.csv')
#print(df.info())
cond=df.dtypes=='object'
#print(df.shape)
df=df.drop(df.columns[cond],axis=1)
df=df.fillna(0)
#print(df.shape)
#print(df.info())
cond2=df.sum(axis=1)>3000
print(len(df[cond2]))
이렇게 해도 정답 73으로 동일한데, 이렇게 풀어도 되는지 여쭙고싶습니다.
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다. dkdidch님, 질문해주신 내용에 대해 답변드리겠습니다.
제출하신 코드는 데이터프레임에서 object
타입의 열을 제거한 후 결측값을 0으로 채우고, 각 행의 합산 값이 3000보다 큰 행의 개수를 세고 있습니다. 이 방식은 문제의 요구사항을 충족하는 다른 유효한 접근법으로 볼 수 있습니다.
코드를 단계별로 검토하자면:
object
타입 열 제거: df.dtypes=='object'
조건으로 문자형 열을 선택하고, 삭제합니다.
결측값 채우기: df.fillna(0)
메서드를 사용해 결측값을 0으로 채웁니다.
행 합계 계산 및 3000 이상 확인: 최종적으로 각 행의 합을 계산하여 3000보다 큰 행의 개수를 출력합니다.
유사한 문제에서 다양한 접근법이 있을 수 있으며, 질문자님이 선택한 방식도 문제의 요구에 효과적으로 대응하고 있습니다.
유사한 주제에 대한 해결책을 제공하는 기존 질문과 답변을 참고하시기 바랍니다:
df.sum(axis=1) > 3000
사용법을 예로 드는 피드백을 제공합니다.질문자님의 코드가 문제의 요구사항을 만족하므로, 적용한 방법은 적절하다고 할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.