ํ์ด์ฌ์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์ฒ๋ฆฌํ๋ ๊ณผ์ ์์ ๋ฐ์ดํฐ ๊ฒฐ์ธก์น(missing data)๋ฅผ ๋ง๋ฌ์๋ ํด๊ฒฐ๋ฐฉ๋ฒ 2๊ฐ์ง๋ฅผ ์๊ฐํ๋ค.
์ฒซ๋ฒ์งธ๋ ๊ฒฐ์ธก์น์ ๋ํด ๋ฐ์ดํฐ์ ํ๊ท ๊ฐ์ผ๋ก ๋ฉ๊พธ๋ ๋ฐฉ๋ฒ
๋๋ฒ์ฌ๋ ๋ณด๊ฐ๋ฒ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด๋ค.
๋จผ์ ๊ฒฐ์ธก์น์ ๊ฐ๋ ์ ๋ค์ ์ง์ด๋ณด์๋ฉด missing data ์ฆ, ์์ด๋ฒ๋ฆฐ ๋ฐ์ดํฐ, ๋ฐ์ดํฐ๊ฐ ๋ด๊ธด ํ์์,
ํ์ ๋ํด ๋ฐ์ดํฐ ๊ฐ์ ๋ฃ๋ ์ด์ด ๋น์ด์๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์๋ฅผ ๋ค์ด, ํ์๋ค์ ํ๋ฒ์ด๋ผ๋ ํ์์ ํน์ ํ์์ ํ๋ฒ ์นธ์ด ๋น์ด์ ธ ์๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์ด๋ฆ | ํ๋ฒ |
---|---|
ํ๊ธธ๋ | 21900123 |
์ฌ์ฒญ์ด | (missing data) |
๋ก๋นํ | 21500321 |
์ ํ์์๋ ์ฌ์ฒญ์ด์ ํ๋ฒ์์ ๋ฐ์ดํฐ missing์ด ๋ฐ์ํ๋ค.
์ด๋ฐ ๋น ๋ฐ์ดํฐ๊ฐ ์์๊ฐ๋ด ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ ๊ณผ์ ์ ๊ฑฐ์น๋ ๊ฒ์ด๋ค.
ํ๋ก๊ทธ๋๋จธ๋ ์ด๋ฐ ๋น ๋ฐ์ดํฐ๋ฅผ ์ตํต์ฑ ์๊ฒ ๋ฉ๊ฟ์ค์ผํ๋๋ฐ, ์ค๋ ์๊ฐํ ๋ฐฉ๋ฒ ์ค ์ฒซ๋ฒ์งธ๋ก ํ๊ท ๊ฐ์ผ๋ก ๋ฉ๊พธ๊ธฐ๋ฅผ ์ดํด๋ณด์.
ํ๊ท ๊ฐ์ ์ฐพ๋ ํจ์ mean()๊ณผ ๋ฐ์ดํฐ ๊ฒฐ์ธก์น๊ฐ ์ผ์ด๋๋์ง ํ์ธํ๋ fillna(
์ด์ฉ๊ณ
, inplace=True)๋ง ์๋ฉด ๋๋ค.
ํ์ฝ๋๋ ์๋์ ๊ฐ๋ค
df.fillna({'Column name' : int(df[Column name'].mean()}, inplace=True)
์ฝ๋๋ฅผ ํด์ํ์๋ฉด df๋ ๋ฐ์ดํฐํ๋ ์์ผ๋ก ๋ฐ์ดํฐ๊ฐ ๋ด๊ฒจ์๋ ๊ฐ์ฒด(๋ฐ์ดํฐ ๊ฐ์ฒด)
fillnaํจ์๋ fill null arg๋ผ๊ณ ์๊ฐํ๋ฉด ๋ฐ๋ก ์ดํด๊ฐ ๊ฐ๋ค, null์ ๋ด๊ฐ ์ง์ ํ arg๋ก ์ฑ์๋ผ!
Column name์ missing data๊ฐ ๋ฐ์ํ๋ ํ์ ์ด๋ฆ
int(df[Column name'].mean()๋ถ๋ถ์ ๋ฐ์ดํฐ ๊ฐ์ฒด๊ฐ ์ผ๋จ ๋น์ฐํ ๋ฐฐ์ด๋ก ํํํ ์ ์๊ณ (๋ฐ์ดํฐ ์์ ๋ค์ํ ํ์ด ์์ํ ๋)
๊ทธ ๋ฐฐ์ด์ค ๋ด๊ฐ ์ฑ์ฐ๊ณ ์ ํ๋ ํ์ ์ด๋ฆ์ ์ฐพ์์ ๊ทธ ํ์ ํ๊ท (-meanํจ์ ์ฌ์ฉ)์ผ๋ก ๋ฐ๊พธ๊ณ ๊ทธ ๊ฐ์ ์ ์(-intํจ์ ์ฌ์ฉ)๋ก ํ๋ณํ์ ํด์ค๋ค๋ ๋ป
inplace=True๋ ๋ฐ์ดํฐ ๊ฒฐ์ธก์น๊ฐ ๋ฐ์ํ๋ ๊ฒ์ด ๋ง๋์ง ํ์ธํ๋ ์ฉ๋
์์ด๊ณ ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ ์ฝ๋ค ์ฌ์!!
๋๋ฒ์งธ ๋ฐฉ๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ํ๊ท ๊ฐ์ด ์๋๋ผ ์ข๋ ์ตํต์ฑ ์๊ฒ ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ด๋ค.
์ผ๋จ ๋ณด๊ฐ๋ฒ์ ์๋ฏธ๋ถํฐ ์๊ณ ๊ฐ์. ๋ค์ด๋ฒ ์ํ๋ฐฑ๊ณผ์์ ์ค๋ช ํ๊ธฐ๋ฅผ,,
๋ณด๊ฐ๋ฒ์ด๋ ์๊ณ ์๋ ๋ฐ์ดํฐ ๊ฐ๋ค์ ์ด์ฉํ์ฌ ๋ชจ๋ฅด๋ ๊ฐ์ ์ถ์ ํ๋ ๋ฐฉ๋ฒ์ ํ ์ข ๋ฅ์ด๋ค.
์ฆ ์ฐ๋ฆฌ๊ฐ ์๋ํ ์ฒซ๋ฒ์งธ ๋ฐฉ๋ฒ ํ๊ท ๊ฐ์ผ๋ก ์ฑ์ฐ๊ธฐ๋ ๋น์ฐํ ๋ณด๊ฐ๋ฒ ์ค ํ๋๋ค.
๊ทธ๋ฐ๋ฐ, ์ ๋๋ฒ์งธ ๋ณด๊ฐ๋ฒ์ ๋ฐ๋ก ์ค๋ช ํ๋๋, ๊ทธ ์ด์ ๋ ๋น ๋ฐ์ดํฐ์ ๋ํด์ ์ด๋ค ๋ฐฉ์์ ํตํด ์ด๋ป๊ฒ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์์ง๋ ํ๋ก๊ทธ๋๋จธ์ ๊ฒฐ์ ์ ๋ฌ๋ ธ๊ธฐ ๋๋ฌธ์ด๋ค. ์ฑ์ฐ๊ณ ์ ํ๋ ๋ฐ์ดํฐ๊ฐ ์๊ฐ ๋ฐ์ดํฐ์ธ์ง ๋ ์ง ๋ฐ์ดํฐ์ธ์ง ์จ๋ ๋ฐ์ดํฐ์ธ์ง ์๋ ๋ฐ์ดํฐ์ธ์ง ์ฑ์ ๋ฐ์ดํฐ์ ๋ฐ๋ผ ์ด ๊ฐ๊ฐ์ ๋ฐ์ดํฐ๋ค์ ์ฑ์ฐ๋ ๋ฐฉ์์ด ๋ค ๋ค๋ฅด๋ค! ๋ฌด์กฐ๊ฑด ํ๊ท ๊ฐ์ผ๋ก ์ฑ์ฐ๋๊ฒ ์ ๋ต์ด ์๋๋ผ๋ ๋ง.
์ด์ ๋ณด๊ฐ๋ฒ์ ์์ ๋ฅผ ์ดํด๋ณด์.
๊ฒฐ์ธก์น๋ฅผ ์ฒ๋ฆฌํด์ผํ๋ ๋ฐ์ดํฐ๊ฐ ๊ธฐ์ ์ ๋ณด๋ผ๊ณ ํ์, ์ด๋ ๋ฐ์ดํฐ์ ์์๋ ์๊ฐ ์์๋ค.
ex.
๋ ์ง | ๊ธฐ์ ์ ๋ณด |
2023.02.06 11:00 | 0๋ |
2023.02.06 12:00 | (missing data) |
2023.02.06 13:00 | 4๋ |
๋ฐ๋ผ์, ๊ฒฐ์ธก์น์ ๋ํด์๋ ์ง์ ์๊ฐ๊ณผ ์งํ์๊ฐ์ ํ๊ท ๊ฐ์ผ๋ก ๋ณด๊ฐํ๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ผ ๊ฒ์ด๋ค.
์ค๋ ์ฌ์ฉํ ์๋์ ์ฝ๋๋ ์กด์ฌํ๋ ์์ ๊ฐ๊ณผ ์กด์ฌํ๋ ๋ค์ ๊ฐ ์ฌ์ด์ ๋น ๊ฐ์ ์กฐ๊ธ์ฉ ๋ณํ์์ผ๊ฐ๋ฉฐ ์ฑ์๊ฐ๋ ๋ฐฉ์์ด๋ค.
๋ค๋ฅธ ์ฝ๋ ํ์์์ด ๋ณธ ์ฝ๋๋ง ์ฌ์ฉํ๋ฉด ๋๊ณ , ๋ณด๊ฐ๋ฒ ์ดํ null ์ ๋ฌด ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ๊ณ ์ถ๋ค๋ฉด ๊ทธ ์๋ print๋ฌธ์ ํตํด ํ์ธํ ์ ์๋ค.
df.interpolate(inplace=True)
print(df.isnull().sum())
๋ค์ํ ๋ณด๊ฐ๋ฒ์ ๋ํด ๋ ๋ง์ด ์๊ณ ์ถ๋ค๋ฉด ์๋ ๋ธ๋ก๊ทธ ์ฌ์ดํธ์ ์ ์ ๋ฆฌ๋์ด ์์ด์ ์ถ์ฒํ๋ค!
'AI' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] python ๋ชจ๋ธ๋ง : RandomForestRegressor ๋ชจ๋ธ ์ฌ์ฉ (1) | 2023.02.08 |
---|---|
[TIL] python ๋ฐ์ดํฐ ์ฝ๊ธฐ ๊ธฐ๋ณธ (1) | 2023.02.01 |