상세 컨텐츠

본문 제목

판다스 데이터 선택

PYTHON/PANDAS

by mk coding 2024. 2. 29. 16:28

본문

1. 열 선택하기

단일 컬럼 선택하기

print(df['temp'])

print()

print(df.temp)
print()
print(type(df['temp']))

DataFrame의 하나의 열을 선택하면, 하나의 Series를 만든다.

df['컬럼명'] == df.컬럼명 이다.

단, 이 방법에서는 열 이름이 숫자로 시작하지 않고 공백이나 특수 문자 등을 포함하지 않는 등의 조건을 만족해야 한다. 

여러 컬럼 선택

df[['date', 'temp']]

추출한 열 이름을 목록에 저장한 다음 [ ]에 전달하면 DataFrame에서 여러 열을 선택한다. 

 

 

iloc() 및 loc() 메소드를 사용하여 여러 열을 선택할 수도 있다.

여러 컬럼 선택 : loc()

df.loc[:, ['date', 'temp']]

열 이름을 사용하여 열을 선택하려는 경우 loc()를 사용한다. 

여러 컬럼 선택 : iloc()

df.iloc[:, [0,1]]

열 인덱스를 사용하여 추출하려면 다음과 같이 iloc()을 사용한다. 

2. 행 선택하기 

특정 행 범위 선택

df[0:3]

인덱스 숫자를 사용하면 행을 슬라이스한다. 

3. 레이블로 선택하기

특정 날짜에 해당하는 열 선택

df.index = df['date']
df.loc['2010-08-01', ['temp', 'mean_wind']]

4. 위치로 선택하기

특정 행 선택

df.iloc[3]

iloc[n]과 같이 정수를 입력하면 해당 행을 선택한다. iloc 이후에 붙은 숫자 3은 (위에서 0부터 셀 때) 3번째 행이라는 뜻이다.

특정 행과 열 선택 : 슬라이싱

df.head()

df.iloc[1:3, 0:2]

5. 불 인덱싱

하나의 열의 값을 기준으로 데이터를 선택하나. df[ df.A > 0 ]은 df에서 A열이 0보다 큰 데이터를 보여 준다. 

조건에 맞는 데이터 추출

w = df['temp'] >= 30
df[w]

기온이 30도 이상인 모든 데이터를 추출한다. 넘파이의 불 인덱싱과 동일한 문법이다. 

# 최고로 더웠던 날의 모든 정보를 출력하세요
w = df['temp'] == df['temp'].max()
df[w]

조건이 2개 이상인 경우 추출

# 기온이 30도 이상이고 최대 풍속이 9 이상인 데이터
w = (df['temp'] >= 30) & (df['max_wind']>=9)
df[w]

조건이 2개 이상인 경우에는 ( )로 묶는다.

| == or 이고, & == and 이다. 

 

 

 

 

 

본 게시글은 상업적 목적이 아닌 학습용 게시글임을 밝힙니다. 

'PYTHON > PANDAS' 카테고리의 다른 글

판다스 데이터 확인  (1) 2024.02.29
판다스 객체 생성  (1) 2024.02.29
PANDAS 기초 문법 정리1_PANDAS란?  (0) 2024.01.22

관련글 더보기