인프런 커뮤니티 질문&답변
작업형1의 모의문제2번에 문제4번 풀이 질문 드립니다
해결된 질문
작성
·
22
0
작업형1의 모의문제2번에 문제4번 질문입니다
문제4
주어진 데이터에서 자료형(type)이 object인 컬럼은 삭제하고, 결측치는 0으로 대체한다.
행 단위로 합한 다음 그 값이 3000보다 큰 값의 데이터 수를 구하시오 ('age', 'f1', 'f2', 'f5', 'views'의 각 행별 합)
에서 두번째 라인의 행단위로 합한다음 그값이 3000 보다 큰 값의 데이타 수를 구하라 것으로
문제풀이는 아래와 같습니다
cols = df.select_dtypes(exclude='object').columns
cols
df = df[cols]
df.head()
df = df.fillna(0)
df = df.T
df.head()
print(sum(df.sum() > 3000))
여기서 질문이 문제에서 행단위로 합한다음 그 값이 3000보다 큰 데이타 수를 구하라는
의미는 단순한 워딩만 분석해 보면 아래 처리 이해 됩니다.
즉 , age f1 ... 등등의 행의 합을 구하고 그 값이 3000이 넘는 수가 몇개냐의 의미로 해석되됩니다. 선생님의 문제 풀이가 이해가 안가는데 설명 좀 부탁드립니다,
cols = df.select_dtypes(exclude="object").columns
cols
df = df[cols]
df = df.fillna(0)
df = df.T
df['tot'] = df.sum(axis=1)
print(df['tot'])
(df['tot'] > 3000).sum()
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요
먼저 유사한 질문이 있었는지 검색해보세요
답변 2
0
행(row) 에서 age + f1 + f2 + f5 + views 등의 합계를 구하기 위해서는
행과 열을 변경해서 기존의 컬럼 합계를 구하는 방식이 있습니다.
df = df.T
df.sum() 그리고 나서 행과 열이 변경되었기 때문에 다음과 같이 데이터가 변경됩니다.

이제 df.sum()으로 컬럼별로 더하고 이 합계가 3000보다 크면 True, 작으면 False가 되는거죠!
여기서 True는 1, False는 0과 같습니다. 이를 sum()하면 조건에 맞는 개수가 됩니다.
sum(df.sum() > 3000)
부탁드려요!
질문과 코드가 줄내림 없이 모두 붙어 있어서 정확한 질문을 파악에 어려움이 있습니다.
혹시 또 질문한다면 코드 블록을 사용해서 질문과 코드를 분리 부탁드려요 (줄내림 등)

0
안녕하세요, 인프런 AI 인턴입니다. ingoout님께서 질문하신 내용에 대해 간단히 설명드리겠습니다.
작업형 1 모의문제 2번의 문제4에 대해 질문을 주셨습니다. 이 문제는 주어진 데이터에서 object 타입의 컬럼을 삭제하고, 결측치를 0으로 대체한 후, 각 행의 합이 3000보다 큰 행의 개수를 세는 문제입니다.
코드 설명
컬럼 선택:
cols = df.select_dtypes(exclude='object').columns를 통해object타입이 아닌 나머지 컬럼만 선택합니다.
데이터프레임 필터링:
df = df[cols]로 선택한 컬럼만을 포함하는 데이터프레임을 만듭니다.
결측치 대체:
df = df.fillna(0)로 모든 결측치를 0으로 대체하여 데이터의 누락된 값을 채웁니다.
행 단위 합계 계산:
df['tot'] = df.sum(axis=1)를 사용해 각 행의 합계를 새로운 컬럼 ‘tot’에 저장합니다.
조건에 맞는 행의 개수 세기:
(df['tot'] > 3000).sum()을 사용하여 각 행의 합이 3000보다 큰 행의 개수를 셉니다.
문제 이해의 핵심
- “행 단위로 합한 다음 그 값이 3000보다 큰 값의 데이터 수”라는 것은 각 행의 모든 수치형 데이터의 합계가 3000을 넘는 행이 몇 개인지 확인하는 것입니다.
관련 질문 및 답변 링크
- 작업형1 모의문제2 강의에서 문제4 - 유사한 코드의 오류 메시지와 이를 해결하는 방법에 대한 논의가 포함되어 있습니다.
- 4-2 type 1 4번 문제 - 행 단위 합 계산법에 대한 설명이 포함되어 있습니다.
이해를 돕기 위해 추가적인 설명을 드렸습니다. 이 문제의 요구 사항에 맞는 코드 흐름을 이해하는 데 도움이 되기를 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





