dataframe ์์ฑ
pd.DataFrame(โdataโ, โindexโ, โcolumnsโ)
df = pd.DataFrame(data=randn, index='A B C'.split(), columns='W X Y'.split())
df['W', 'Y']
A 1 3
B 4 6
C 7 9
์ด ํฉ์น๊ธฐ
df['NEW'] = df['X'] + df['Y']
df.drop(โ์ด๋ฆโ,axis = 0 or 1, inplace=True)
- axis: 0 โ ํ, axis: 1 โ ์ด
- inplace: ๋ณ๊ฒฝ ๋ด์ฉ์ ์ ์ฅํ ๊ฒ์ธ์ง ์ฌ๋ถ
df.drop('NEW', axis=1, inplace=True)
data filtering
ํน์ ์กฐ๊ฑด์ ํด๋นํ๋ ์ด ํํฐ๋ง
df['W'] > 4
df[df['W'] > 4]
df[df['W'] > 4]['Y']
๊ต์งํฉ
cond1 = df['W'] > 2
cond2 = df['Y'] > 8
df[(cond1) & (cond2)]
index
df.reset_index()
df ์ ๋ณด ๋ณด๊ธฐ
df.info()
- data ํ์
, item ๊ฐ์, ์ด๋ฆ, ์ ์ฅ๊ณต๊ฐ ๋ฑ์ ๋ํ๋
df.dtypes()
- data์ ์๋ฃํ์ ๋ํ๋
df.describe()
- df์ ๋ํ ๋ค์์ ์ง๊ณ ๋ฉ์๋ ๋ฐํ
- ๊ฐ์, ํ๊ท , ๋ถ์ฐ, ์ฌ๋ถ์
๊ฒฐ์ธก์น ๋ค๋ฃจ๊ธฐ
| A | B | C |
---|
0 | 1.0 | 5.0 | 1 |
1 | 2.0 | NaN | 2 |
2 | NaN | NaN | 3 |
df.dropna(โaxisโ, โthreshโ)
- ๊ฒฐ์ธก์น๋ฅผ ํฌํจํ ํ ์ ๊ฑฐ
- axis = 0 โ ํ ์ ๊ฑฐ
- axis = 1 โ ์ด ์ ๊ฑฐ
- thresh โ ์ ๊ฑฐํ๋ ค๊ณ ํ๋ ๊ฒฐ์ธก์น์ ์ต์ ๊ฐ์
- ex) df.dropna(thresh=2)
df.fillna(value = โ โ)
- ๊ฒฐ์ธก์น๋ฅผ value ๊ฐ์ผ๋ก ์ฑ์
- df.fillna(df.mean()) ๊ณผ ๊ฐ์ ํ์์ผ๋ก ์ด์ฉ
- df['A'].fillna(value=df['A'].,mean())
๊ธฐํ method
df.unique()
df.nunique()
- ๊ณ ์ณ๊ฐ์ ๊ฐ์ ์ถ๋ ฅ
df.value_counts()
- ๊ฐ๊ฐ์ ๊ณ ์ณ๊ฐ๊ณผ ๋ฐ์ ํ์ ์ถ๋ ฅ