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

kccjjang님의 프로필 이미지
kccjjang

작성한 질문수

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

2회 기출유형(작업형2)

df[cond][Reached.on.Time_Y.N]의 의미가 궁금합니다.

해결된 질문

작성

·

144

·

수정됨

0

감사합니다.

cond 조건이 나오고 , 뒤에 또 [] 구문이 나오면 어떻게 연결되는지 궁금합니다.

 

일단 의도는 디스카운트 10% 넘는 행 중에서, 정시 도착 하는 수라고 이해했는데요.

이 두개의 []가 어떤 순서로, 이루어 지는지?

이건 두개의 명령문을 합쳐 놓은건지요?

 

 

 

답변 1

0

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

이해하신 대로 df[cond][Reached.on.Time_Y.N]는 두 개의 대괄호 [] 명령문을 연결해서 사용한 것입니다.


처음 df[cond]는 cond 조건에 해당하는 행(row)들만 필터링해서 선택하는 역할을 합니다.
그 다음 df[cond] 뒤에 오는 [Reached.on.Time_Y.N]는 앞서 선택된 행들 중에서 Reached.on.Time_Y.N 컬럼의 값만 추출하는 역할을 합니다.


즉, df[cond][Reached.on.Time_Y.N]는 아래와 같이 두 단계로 이뤄진다고 보시면 됩니다.

  1. df[cond] : Discount > 10% 조건을 만족하는 행 선택

  2. df[cond][Reached.on.Time_Y.N] : 1에서 선택된 행들의 Reached.on.Time_Y.N 컬럼값 선택

    이렇게 대괄호를 연속으로 사용하는 체이닝(chaining) 방식은 판다스에서 자주 쓰이는 문법입니다. 코드를 간결하게 만들어주는 장점이 있어요.

kccjjang님의 프로필 이미지
kccjjang

작성한 질문수

질문하기