14 Index, Column Method
| 7 Minute Read on Pandas
Index, Column조작¶
- Pandas에서는 Index와 Columns이 객체이므로 객체 안에 중요한 정보를 다루기 위한 메소드들이 존재함
- 대표적인 방법들 정리해 보면
- reset_index: index를 columns의 하나로 변형시키고 0부터 n-1 까지 새로운 index를 추가
- set_index: reset_index와는 반대로 columns 중에 하나를 index로 변경
- drop([row]) : index의 row를 삭제함
- drop([col], axis=1): 컬럼을 삭제
- df[df.name != 'Tina']: 특정컬럼의 조건 로우만 삭제
- 컬럼이름 변경: df.rename
- 컬럼 Slicing을 통한 DataFrame내 컬럼 내 위치변경
In [1]:
import pandas as pd
import numpy as np
data = np.arange(12).reshape((-1, 4))
index = [2002, 2003, 2004]
columns = ['Arizona','Boston', 'Chicago','Detroit']
df = pd.DataFrame(data = data, index = index , columns = columns)
print(df)
In [2]:
# index에 'Year'라는 이름을 부여함
df.index.name = 'Year'
print(df.index)
df
Out[2]:
In [3]:
# reset_index를 사용하여 'Year'가 하나의 컬럼으로 변경됨
df = df.reset_index()
df
Out[3]:
In [4]:
# 컬럼 'Arizona' set_index()메소드를 사용하여 index로 변경
df = df.set_index('Arizona')
df
Out[4]:
In [5]:
#index를 인풋으로 drop메소드 사용
df.drop([0, 4])
Out[5]:
In [6]:
# drop메소드 사용시 columm이 인풋이면 axis = 1를 추가 해야 함
df.drop(['Boston','Year'], axis = 1)
Out[6]:
In [7]:
# 특정컬럼의 조건만 삭제
df[df['Boston'] != 1]
Out[7]:
In [8]:
# 컬럼이름 변경
df = df.rename(columns={'Year': 'Arizona', 'Chicago': 'Chicago2'})
df
Out[8]:
In [9]:
# 컬럼 Slicing을 통한 DataFrame 위치변경
df = pd.DataFrame(data = data, index = index , columns = columns)
cols = df.columns.tolist()
cols = cols[-1:] + cols[:-1]
df = df[cols]
df
Out[9]: