상세 컨텐츠

본문 제목

[pandas] dataframe column 추출하기 - pop() 이용

머신러닝 딥러닝/PANDAS

by 힐둔 2021. 8. 3. 21:23

본문

DataFrame에서 특정행을 추출하는 pop() 에 대해 알아 보도록 하자.

 

데이터를 처리할 때 DataFrame으로 CSV를 load 하고 나서 특정 열 전체를 추출하고 싶은 경우가 있는데 이때에는 pop()을 이용하면 된다. 다만 주의점은 원본데이터에서도 삭제가 된다는 점이다. 이용하기 전에 copy()함수를 이용해서 DataFrame을 copy한 후 pop으로 추출 하는게 안전하다.

 

DataFrame은 Series로 구성이 되어있기 때문에 당연히 추출된 데이터 타입은 Series 객체이다. 인자는 추출 하고픈 columns의 label을 지정하면 된다. 추출하는 다양한 방법 중에서 원본 데이터가 삭제되도 되는 경우에 사용하면 유용할 듯 싶다.

 

import pandas as pd 
df = pd.DataFrame([('falcon', 'bird', 389.0), 
                    ('parrot', 'bird', 24.0), ('lion', 'mammal', 80.5), 
                    ('monkey', 'mammal', np.nan)], columns=('name', 'class', 'max_speed')) 
df

 

아래와 같이 원본데이터에서 삭제할 columns의 label을 입력한다. 그리고 해당 객체의 타입과 데이터를 출력하고 더불어 원본 데이터도 같이 출력 해보자.

 

series = df.pop('class')
print(series) 
print('\n') 
print(type(series)) 
print('\n') 
print(df)

 

아래와 같이 원본에서 class가 삭제 되었고, 뽑은 열은 당연히 Series객체이다.

 

 

 

관련글 더보기

댓글 영역