Python

Pandas : 데이터 필터링하기 #2 (열 단위 데이터 추출)

Sorting 2021. 1. 29. 16:28
반응형

데이터 프레임에서 특정 열만 골라 새로운 프레임으로 만들고 싶을 땐

다음과 같이 대괄호를 사용하면 된다.

 

먼저 다음과 같은 데이터가 있다고 가정한다.

import pandas

# 테스트 데이터
data = [(0, 'a', '서울'), (1, 'b', '부산'), (2, 'c', '대구'), (3, 'a', '서울'), (4, 'a', '인천'), (5, 'b', '여수'), (6, 'c', '대전')]
df = pd.DataFrame(data, columns=['id', 'name', 'location'])
df.head()

 

 

먼저 한 개의 열만 추출해보자.

하나의 열을 추출하면, 시리즈가 리턴된다.

series = df["location"]
series.head()

 

두 개 이상의 열을 추출하려면, 대괄호 안에 리스트를 전달한다.

이 때 리턴 타입은 프레임이다.

frame = df[["id", "location"]]
frame.head()

 


 

loc 프로퍼티와 조합하여 

일부 행, 일부 열 데이터만 별도의 프레임으로 구성할 수도 있다.

 

다음과 같이 코드를 작성하면, name 이 "a"인 행의 id, location 만 얻어올 수 있다.

frame = df.loc[df["name"]=="a", ["id", "location"]]
frame.head()

df.loc[ 행, 열 ] 의 형태로 필터링할 내용을 입력하면 된다.

 

 

 

 

 

반응형