๋ฐ์ํ
๋ฐ์ดํฐ ์ ๊ทํ
- dataFrame ์ค๊ณ์์ ์ค๋ณต ์ต์ํ→๋ฌด๊ฒฐ์ฑ์ ๊ฐํํ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๋ process.
- dataFrame์ ์ ๊ทํ ๋ชฉํ
: ์ด์์ด ์๋ ๊ด๊ณ๋ฅผ ์ฌ๊ตฌ์ฑํ์ฌ ์๊ณ ์ ์กฐ์ง๋ ๊ด๊ณ๋ฅผ ์์ฑ.
๋ฐ์ดํฐ ๋ถ์
- ์์ง๋ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํจํด์ ์ถ์ถํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ถ์ํ์ฌ ํ์ฉ๊ฐ์น๋ฅผ ํ๋จํ๋ค.
- ๋ฐ์ดํฐ์ ์ค๋ณต์ด๋ ๋๋ฝ ๋ฑ์ ๊ฒฐํจ์ด ์์ผ๋ฉด ์ ๋ขฐ์ฑ์ด ๋จ์ด์ง๋ฏ๋ก ๋ฐ์ดํฐ ์ ๊ทํ๊ฐ ํ์ํ๋ค.
๋ฐ์ดํฐ ๋ถ์ ์ ํ๋
- ๋ฐ์ดํฐ์ ๋ํ ์ ๋ขฐ์ฑ์ ์์ง๋ ๋ฐ์ดํฐ์ ํ์ง์ ๋ฐ๋ผ ๊ฒฐ์ .
- ๋ฐ์ดํฐ์ ํ์ง์ ๋์ด๊ธฐ ์ํด์๋ ๊ฒฐ์ธก์น(๋๋ฝ ๋ฐ์ดํฐ) ํ์ธ๊ณผ ์ค๋ณต ๋ฐ์ดํฐ์ ์ ๊ฑฐ ๋ฑ ์ค๋ฅ๋ฅผ ์ํํ๋ ๊ณผ์ ์ ๊ฑฐ์ณ์ผ ํ๋ค.
NaN
Not a Number
๋๋ฝ ๋ฐ์ดํฐ
- ๋ฐ์ดํฐ ๊ฐ์ด ์กด์ฌํ์ง ์๊ฑฐ๋ ๋๋ฝ๋ ๋ฐ์ดํฐ.
- 0, ?, - ๊ณผ ๊ฐ์ด ํ๊ธฐ๋๊ธฐ๋ ํ๋๋ฐ ์ด๋ด ๊ฒฝ์ฐ
df.value_count(dropna=False)
→ NaN๊ณผ ๊ณ ์ ๊ฐ ๊ฐ์ ์ถ๋ ฅ.
df.isnull().sum()
→ ๊ฐ ์ด์ ๊ฒฐ์ธก์น ๊ฐ์ ์ถ๋ ฅ.
df['์ปฌ๋ผ๋ช '].fillna(์นํdata, inplace=True)
→ ๊ฒฐ์ธก์น ๋ฐ์ดํฐ๋ฅผ ์นํ.
fill nan
- ๊ฒฐ์ธก์น๋ฅผ ๋ฌด์์ ์ญ์ ํ๋ค๋ฉด ๋ถ์ํ ๋ฐ์ดํฐ๊ฐ ๋๋ฌด ์ ์ด์ง ์ ์๋ค.
- ๋ณดํต ๋ฐ์ดํฐ์ ๋ถํฌ์ ํน์ฑ์ ์ ๋ํ๋ผ ์ ์๋ ํ๊ท ๊ฐ, ์ต๋น๊ฐ(๊ฐ์ฅ ๋ง์ด ๋์จ ๊ฐ), ์ค๊ฐ๊ฐ ๋ฑ์ผ๋ก ์นํํ๋ค.
- df['์ปฌ๋ผ๋ช
'].fillna(์นํdata, inplace=True)
→ ์๋ณธ ๊ฐ์ฒด๋ ๊ฐ์ด ๋ณ๊ฒฝ.
df.loc['ํ', '์ด'] = ์์๊ฐ
→ ๊ฒฐ์ธก์น๋ฅผ ํน์ ์์๊ฐ์ผ๋ก ์นํ.
df.fillna(0).iloc[ํ, ์ด]
→ NaN๊ฐ์ ๋ชจ๋ 0์ผ๋ก ์นํ.
df.fillna(method='ffill').iloc[ํ, ์ด]
→ ์ ํ์ ๊ฐ์ผ๋ก ์นํ.
df.fillna(method='bfill').iloc[ํ, ์ด]
→ ๋ค ํ์ ๊ฐ์ผ๋ก ์นํ.
df.interpolate().iloc[ํ, ์ด]
→ ์ ๋ค ์์ชฝ ํ์ ์ค๊ฐ๊ฐ์ผ๋ก ์นํ.
๋ฐ์ํ
'๐ Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python]๋ฐ์ดํฐ ์๊ฐํ๋? & Pandas Graph(plot) (0) | 2024.06.19 |
---|---|
[Python]๊ฒฐ์ธก์นNaN ์ญ์ dropna (0) | 2024.06.18 |
[Python]value_counts, ํ๊ท ๊ฐ๊ณผ ์ค์๊ฐ ์ ๋ณด ํน์ธ (0) | 2024.06.18 |
[Python]shape&info(), ํน์ ์ด์ ์๋ฃํ ์ ๋ณด ํ์ธ (0) | 2024.06.18 |
[Python]CSV ์ ์ฅ&์ฝ๊ธฐ, Jsonํ์ผ ์ ์ฅ&์ฝ๊ธฐ (0) | 2024.06.17 |