[python] dataframe.loc의 구조

양승우·2024년 11월 28일

Python

목록 보기
12/16

전처리 과정에서 loc를 사용한 구문이 이해가 잘 되지 않아 그 구성을 뜯어보기로 했다.

data['popularity_flag'] = 0
data.loc[data['popularity'] > 50, 'popularity_flag'] = 1

일단 popularity_flag가 기본적으로 0이 들어가고,
만약 popularity가 50보다 크다면 이를 1로 바꿔준다는 코드이다.

위의 코드는 'dataframe.loc[(row 조건), (column 조건)]' 형태의 코드이다
,를 기준으로 앞은 row, 뒤는 column에 대한 조건이 입력된다.

data.loc[data['popularity'] > 50, 'popularity_flag']라는 케이스의 경우,
row는 'data['popularity'] > 50'라는 조건을 만족하는 경우,
column은 column명이 'popularity_flag'라는 조건을 만족하는 경우라고 할 수 있겠다.

예전에 DataFrame에서 특정 행/열을 삭제하는 방법을 정리한 글이 있는데 (링크)
그 때의 예시 중 하나인 'df.loc[:, 'Age':]' 같은 경우에도 같은 방식으로 해석이 가능하다.
row는 전체, column은 Age부터 끝까지 보겠다는 조건이기에, 슬라이싱 형태로 사용할 수 있는 것이다.

profile
어제보다 오늘 더

0개의 댓글