인프런 커뮤니티 질문&답변

구루미님의 프로필 이미지
구루미

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

라이브러리 및 데이터 불러오기 그리고 EDA

라이브러리 및 데이터 불러오기 그리고 EDA 수업내용중에

해결된 질문

작성

·

166

0

  • 라이브러리 및 데이터 불러오기 그리고 EDA 수업내용중에

  • 15분 36초 경에 보면 남성과 여성의 수를 확인하는데, 그때 남성의 수를 cond_male이라는 변수에 담았기 때문에 len(cond_male) 이렇게만 하면 안되나요? 왜 train[cond_male]이렇게 해주어야 하는지가 궁금합니다. 보통 데이터 프레임 안에서 컬럼을 선택할때 데이터프레임명['컬럼명'] 이런식으로 할때나 사용하는데, 변수로 지정후에도 왜 train으로 감싸나요??

  •  

     

답변 1

1

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

질문주신 내용을 가장 입문자가 혼란스러워하는 내용중 하나입니다 🙂

이때는 무조건 print()를 사용해서 출력해보세요! 그럼 이해가 좀 더 빨리 될거에요!!

 

1

print(cond_male)로 확인해보면

cond_male의 결과는 True 또는 False입니다.

cond_male의 결과가 True 4개, False 6개로 가정해 볼게요(아래 내용 이어짐)


2

len()함수는 행의 수를 카운트 합니다.

len(cond_male)은 총 개수인 10을 반환하지요!

3.

train[cond_male]의 결과는 True인 행만 반환합니다.

따라서 4개의 데이터프레임 행 전체가 나오겠네요

 

4.

구루미님의 말대로 cond_male로만 조건에 맞는 개수를 뽑고싶다면 sum()을 사용할 수 있어요!

True 는 숫자1이고, False는 숫자0이에요 모두 더하면 4가 됩니다.

결국 True의 개수와 같게 되네요!

 

 

구루미님의 프로필 이미지
구루미
질문자

아! len함수는 True, False할것없이 그냥 전체 행을 출력하기 때문에, True만 담긴 train[cond_male]을 따로 해줘야 하는 군여... 감사합니다! 이해햇어요~

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

응원합니다 💪💪💪

구루미님의 프로필 이미지
구루미

작성한 질문수

질문하기