Pandas: inplace

Pandas 수업을 듣다,

data2.Sex.replace(['Male', 'Female'], [1,0], inplace=True)

를 보고, inplace = True의 뜻은 뭘까?하는 의문이 들었다.

우선 이해를 위해 예제를 하나 만들어보겠다.

  • 예제 출처 : playdata 김연지 강사님
data = { 'Sex': ['Male', 'Female', 'Male'],
        'Age': [25, 28, 22],
        'Score': [95, 85, 75]}
data = pd.DataFrame(data)
data
SexAgeScore
0Male2595
1Female2885
2Male2275

DataFrame을 더 효율적으로 사용하려면 모든 타입을 int로 바꿔주는 것이 좋다.
따라서, 'Male' = 0, 'Female' = 1로 바꿔주는 공식이 아래의 공식이다.

data2.Sex.replace(['Male', 'Female'], [1,0], inplace=True)

inpalce를 True로 설정하는 이유는
변환 명령어 실행 후 'inplcae' 메소드가 적용된 데이터 프레임을 출력하기 위함이다.

위의 명령어를 입력하면 아래의 결과가 나온다.

SexAgeScore
012595
102885
212275


그러나, inplace를 False로 변환하면,
'inplace'가 실행될 지라도 데이터 프레임엔 적용되지 않는다.

data2.Sex.replace(['Male', 'Female'], [1,0], inplace = False)
SexAgeScore
0Male2595
1Female2885
2Male2275

원본을 유지함으로써 실수를 줄이기 위함이다.

한마디로,
inplace = True : 이거 저장해.
inplace = False : 저장하지 말아줘

로 생각하면 될 것 같다.

좋은 웹페이지 즐겨찾기