Python/Data Science

DataFrame indexing (3)

hooni40 2021. 7. 27. 22:00
728x90
반응형

 안녕하세요, 지난 글들에서는 DataFrame의 Index와 Column을 불러오는 방법에 대해 정리해보았는데요, 오늘은 응용하여 사용하는 법에 대해 정리해보려 합니다.

 

 Numpy의 array에 Boolean값을 활용하여 출력하는 것 기억나시나요? DataFrame에서도 그것과 유사하게 sorting이 가능합니다. DataFrame의 index에 True와 False를 할당하여 True인 값만 뽑을 수 있고, column에도 동일한 방식이 적용 가능합니다. 아래 예시를 보겠습니다. column에 적용할 때는 이전 시간에 슬라이싱과 같이 row에 해당하는 위치에 :를 붙여주어야 합니다.

 

 

 위의 16번 Cell에서는 df의 인덱스들 중에서 첫 번째(iPhone 7), 두 번째(iPhone 7 Plus), 다섯 번째(iPhone X), 일곱 번째(iPhone XS Max)만 True이므로 출력이 되었고, 27번 Cell에서는 column 중에 첫 번째(출시일), 네 번째(출시 버전)만 True이므로 출력합니다.

 

 또한 Numpy array시에 조건을 만족하는 요소만 출력하듯 Data Frame에도 조건을 줄 수 있습니다. 조건을 걸어주면 각각의 인덱스에 조건을 적용하여 True/False로 구분이 되는데요, 이걸 loc함수에 넣어주면 True인 인덱스만 출력됩니다!

아래 예를 참고 부탁드립니다.

 

디스플레이 크기가 5 이상인 인덱스만 출력

 

 이런 조건문을 여러 개를 한 번에 걸어줄 수 있는데요, 둘 다 만족해야 하는 AND인 경우 '&'를 써서 이어주고, 하나만 만족해도 되는 OR인 경우에는 '|'를 이용하여 연결해 줄 수 있습니다. 마찬가지로 아래 예제를 참고 부탁드립니다.

 

 

728x90
반응형