์ค๋์ผ ใ ฃ TIL์์... ์ ํ ํ๋ก์ ํธ๋ฅผ ์งํํ ํ๋ฆ๋๋ก ๊ฐ๋ณด๊ฒ ์ต๋๋ค.
์ด์ ๋ ๋ฉ์ธ ์ฃผ์ ์๋....! ์ ์ฒ๋ฆฌ์ ๋ํ ๋ ผ์๋ฅผ ์ด์ด์ ์งํํ์ต๋๋ค
์ ํฌ๊ฐ ๊ณ ๋ คํ๋ ์ ์ฒ๋ฆฌ ๋ฐฉ์์ ํฌ๊ฒ ์ธ๊ฐ์ง๊ฐ ์์ต๋๋ค.
- ๊ฑด๊ฐ์์น ๊ธฐ์ค๊ฐ ์ด์ ์ ์ธ
- ๋ชจ๋ ๋ณ์์ ๋ํด ์์ ?ํ๋ก ์ ์ธ
- ์๋ ์ฒจ๋ ํ์ธ ํ ์ ๊ท์ฑ์ ๋ฒ์ด๋๋ ๋ณ์๋ง ์์ ?ํ๋ก ์ ์ธ
๊ฐ๊ฐ ์ฅ๋จ์ ์ด ์๊ธฐ์ ์ ํฌ๊ฐ ๋ฉ๋ํ ์ ์๋ ๋ฐฉ์์ ์ฐพ์ผ๋ฉฐ ๋ ผ์๋ฅผ ๊ฑฐ์น๋ ์๊ฐ์ด ๊ฝค๋ ๊ธธ์๋๋ฐ์
๊ฒฐ๋ก ์ ์ ์ฒ๋ฆฌ๋ฅผ ๋ณต์กํ๊ฒ ์ด๋์ ๋ ํ๋ ๊ฒ ๋ณด๋ค ์ ๊ทธ๋ฐ ๋ฐฉ์์ ์ ํํ๋์ง์ ์ง์คํด๋ณด๋๋กํ๊ณ
์ ํฌ๋ ๊ธฐ์กด์ ์ ํํ๋ ์ํ์ ์ง์?์ ๊ธฐ๋ฐ์ผ๋ก ํ ์ด์์น ํ๋ณ ๊ธฐ์ค์ ๊ณผ๊ฐํ๊ฒ ๋ฒ๋ ธ์ต๋๋ค..
๊ทผ๋ฐ ์๊น์ฐ๋๊น ์ผ๋จ ๋จ๊ธฐ๊ธด ๋จ๊ฒจใ
import pandas as pd
df = pd.read_csv('train_dataset.csv')
print('์๋ณธ ๋ฐ์ดํฐ ํฌ๊ธฐ')
print(df.shape)
print()
remove_mask = (
(df['fasting blood sugar'] > 250) |
(df['fasting blood sugar'] < 50) |
(df['LDL'] > 190) |
(df['serum creatinine'] > 1.4) |
(df['serum creatinine'] < 0.5) |
(df['AST'] > 40) |
(df['ALT'] > 40) |
(df['Gtp'] > 49)
)
removed_df = df.loc[remove_mask].copy()
filtered_df = df.loc[~remove_mask].copy()
print('์๋ณธ ๋ฐ์ดํฐ ์')
print(len(df))
print('\n์ญ์ ๋ ๋ฐ์ดํฐ ์')
print(len(removed_df))
print('\n์ ์ฒ๋ฆฌ ํ ๋ฐ์ดํฐ ์')
print(len(filtered_df))
print('\n์ญ์ ๋น์จ(%)')
print(
round(
len(removed_df) / len(df) * 100,
2
)
)
print('\n์ ์ฒ๋ฆฌ ๋ฐ์ดํฐ ์์ 5ํ')
print(filtered_df.head())
print('\n์ ์ฒ๋ฆฌ ๋ฐ์ดํฐ ์ ๋ณด')
print(filtered_df.info())
๋ง์ง๋ง์ผ๋ก ์ ํํ ๋ฐฉ๋ฒ์ 3sigma. ์ด์ ๋ ๋ฐํ์์ ๋ค์ด๋ณด์์ฃ ใ
์ถ๊ฐ๋ก ์ ํฌ๊ฐ ์งํํ๋๊ฑด ์ํ๊ตฐ์ ์ ์ ํด๋ณด๊ณ ํก์ฐ์/๋นํก์ฐ์ ๊ฐ ์ํ๊ตฐ ๋น์จ์์ ์ฐจ์ด๊ฐ ์๋๋ฅผ ๋ดค๋๋ฐ
์ฌ์ค ์ด๊ฒ or์กฐ๊ฑด์ผ๋ก ์ง์ ํ๊ฑฐ๋ผ ์ ์๋ฏธํ ๊ฒฐ๊ณผ๋ฅผ ๋ด๊ธฐ๋ ์ด๋ ต๋ค๊ณ ํ๋จํ๊ณ
๋ด์ผ ์ถ๊ฐ๋ก! ํก์ฐ์ด ์ํฅ์ ๋ผ์น๋ top3 ์์ธ์ and์กฐ๊ฑด์ผ๋ก ๋ง์กฑํ๋ ์ํ๊ตฐ์ ๋ฝ์๋ณด๊ณ ์ถ๊ฐ๋ก ํ๋จํด๋ณด๊ธฐ๋ก ํ์ต๋๋ค.

์ด๊ฑด ์ ๊ฐ ์ํ์ผ์ ์ํ๊ตฐ ์์น ๋ฝ์๋ณธ๊ฑด๋ฐ ๋น์ฐ ์ ๋ขฐํ ๋งํ ๊ฒฐ๊ณผ๋ ์๋๊ณ ๊ทธ๋ฅ ํ์ผ๋๊น ์๊น์์.... ใ ใ
๋ค์์ ์ ์ ์ฌ๋ ์๊ฐ์ ์ฅ๋์ผ์ ๊บผ๋ด๋ณธ ์ด์ผ๊ธฐ์ธ๋ฐ์
20๋ ํก์ฐ์์ 40๋ ๋นํก์ฐ์์ ๊ฑด๊ฐ ์ํ๋ ์ด๋จ๊น?!
์ ๋ง ๋ฐ์ ์ผ๋ก 40๋ ๋นํก์ฐ์์ ๊ฑด๊ฐ ์ํ๊ฐ ๋ ์ข๊ฒ ๋ํ๋๋ค๋ฉด ์ด๊ฒ๋ ์ฌ๋ฐ๊ฒ ๋ค! ์ด๋ฐ ์ค์๋ ์๋ฆฌ๋ฅผ ํ๋ฉฐ
์ค์ ํก์ฐ์ ๋น์จ์ ๋ฝ์๋ดค์ต๋๋ค!
๊ทธ ๊ฒฐ๊ณผ๋ ๋๋ผ์ ์.

์ ํฌ๋ ๋น์ฐํ 20๋ ํก์ฐ์๊ฐ ๋น์จ์ด ๋์ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๋๋ฐ ์ค์?
40๋๊ฐ ๊ฐ์ฅ ๋ง์์ด์. ๊ทธ์น๋ง ์ด๊ฑฐ์ ๋ฐ๋ก ๋ฐ์ดํฐ ๋ถ์์ ์ค๋ฅ.
์ด๋ฅผ ํก์ฐ๋ฅ ๋น๊ต์์ ๋ณผ ์ ์์ต๋๋ค.

์ ์ ๊ทธ๋ํ์ ์ฐจ์ด๊ฐ ๋ณด์ด์ฌ?
์ ํฌ๊ฐ ๊ฐ์ง ๋ฐ์ดํฐ์ ํ๋ณธ์ค์ 40๋๊ฐ ๋ง์๋ ๊ฒ์ด์ง (์ค์ ๋ก 40๋ ์ธ๊ตฌ๊ฐ ๋ง์ ์ํฅ๋ ์์ ๊ฒ์ผ๋ก ์ถ์ ?ใ )
์ค์ ๋์ด๋๋ณ ํก์ฐ๋ฅ ์ 20๋๊ฐ ๊ฐ์ฅ ๋์์ต๋๋ค!
์ญ์ ์ด๋์ ๋ฐ์ดํฐ ๋ถ์์ด ์ด๋ ต๋จ ๋ง์ด์ง์...?
๋ง์ง๋ง์ผ๋ก๋ ์๋ ์ค๋ ์์ ๋์ด์๋ EDA ๊ฐ ์๋๋ผ
์ ํฌ ๋ชฉํ๋ฅผ ์ํ ์ถ๊ฐ ์๋ฃ์กฐ์ฌ๊ฐ ์ด์ด์ก์ต๋๋ค.
์ค๋ ์ ์ฒ๋ฆฌ ๊ณผ์ ์ ๋ํด ๋ง๋ฌด๋ฆฌํ๋ฉฐ ๋ฐํ ๋ฐฉํฅ์ ๋ณด๋ค ์ ํํ๊ฒ ์ก๊ธฐ ์ํด
์ด๋ค ์๊ฐํ ์๋ฃ๋ฅผ ์ธ ๊ฒ์ธ์ง ๊ตฌ์ฑ์ ์ด๋ป๊ฒ ํ ๊ฒ์ธ์ง์ ๋ํด ์ด์ผ๊ธฐ๋ฅผ ๋ง์ด ๋๋์ด ๋ณด์๋๋ฐ์
์ ํฌ๊ฐ ๋ชฉํ๋ก ์ก์ ํก์ฐ์ ๊ฑด๊ฐ์ ํด๋ก์ธ๊น? ๋ฅผ ์์๋ณด๊ธฐ ์ํด์๋ ์กฐ๊ธ์ ์ง์์ด ํ์ํ์ต๋๋ค.
๋ฐ์ดํฐ์ ํก์ฐ์ด ์ํฅ์ ๋ฏธ์น ์์ธ๋ค์ด ์ค์ ๋ก๋ ์๊ด์ด ์๋ ๊ฒ๋ค์ธ์ง ์์๋ณด๊ณ ์
์ ํฌ๊ฐ ๋ฐ์ดํฐ์์ ๋ฐ๊ฒฌํ ์ ์๋ฏธํ ๋ณํ๋ฅผ ๊ฐ์ง๋ ์์๋ค์ ๋ฝ์์ ์๋ฃ ์กฐ์ฌ๋ฅผ ์งํํ์ต๋๋ค.
systolic, relaxation, fasting blood sugar, triglyceride, LDL, AST, ALT, GTP
๋จผ์ ํ์์ ํก์ฐ์ด ์งํ์๋ ํ์์ ์กฐ๊ธ์ ์์น์ ๊ฐ์ ธ์ฌ ์ ์์ง๋ง ํ์์ ํ์์๋ ํฐ ์ฐ๊ด์ฑ์ด ์์ต๋๋ค.
๋ค๋ง ํก์ฐ์ด ์ํํ ๊ฒ์ ํ๊ด์ ์ง์์ ์ผ๋ก ์์์์ผ์ ์ฌํ๊ด์งํ์ ์ํ์ ๋์ด๊ธฐ ๋๋ฌธ์ ๋๋ค.
ํ๋น์ ์ฐ๊ตฌ์ ๋ฐ๋ผ ๊ฒฐ๋ก ์ด ๋ง์ด ๋ค๋ฅด์ง๋ง ๋์ธ๋ค๊ณ ๋ณผ ์ ์์ ๊ฒ ๊ฐ๋ค๋ ๊ฒฐ๋ก ์ ๋ด๋ ธ์ต๋๋ค. ํก์ฐ์ด ํ๋น ์กฐ์ ์ ํ๋ค๊ฒ ํ๊ณ ์ฅ๊ธฐ์ ์ผ๋ก ๋์ธ๋ค ์ ๋๋ก์.
๋ํ ์ค์ฑ์ง๋ฐฉ ์์น ์ฆ๊ฐ์ HDL ๊ฐ์์๋ ๊ด๋ จ๋์ด ์์ง๋ง LDL ์ฆ๊ฐ์ ๋ํ ์ํฅ์ ์๋ค๊ณ ์๊ฐํ์ต๋๋ค.
๋ง์ง๋ง์ผ๋ก AST, ALT ๊ฐ์์น๋ค์ ์ฐ๊ตฌ๋ง๋ค ๋ง์ด ๋ฌ๋์ด์. ์ ์๋ฏธํ ์ฐจ์ด๋ฅผ ๊ด์ฐฐํ ์๋ ์์ง๋ง ์ด์ ๊ฐ ํก์ฐ์ด๋ค ๋ผ๊ณ ๋จ์ ์ง๊ธฐ๋ ํ๋ ๊ฒ์ด ์์ฃผ๋ ์ํ์ต๊ด, ๋น๋ง๋ ๋ฑ์ด ๋ณด๋ค ์ ์๋ฏธํ ์ํฅ์ ๋ง์ด ๋ฏธ์น๊ธฐ ๋๋ฌธ์ ๋๋ค. ๊ทธ๋ฌ๋ GTP๋ ํก์ฐ๊ณผ ์ ์๋ฏธํ ์ฐ๊ด์ฑ์ด ์๋ค๊ณ ํ๋จํ๋๋ฐ์, ๊ฐ์ธํฌ ๋ด ํจ์์ ์ํฅ์ ์ฃผ์ด γ-GTP ์์น๋ฅผ ์ง์ ์ ์ผ๋ก ๋์ธ๋ค๊ณ ํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก๋ ๋ด์ผ ์ถ๊ฐ๋ก ์งํํ ๋ด์ฉ๋ค์ ์ข ๋ค๋ฃจ์ด ๋ณด์์ต๋๋ค.
์ํ๊ตฐ์ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ ๊ฒ์ธ์ง,,
ํก์ฐ๊ณผ ๋น๋ง์ด ์ฐ๊ด์ด ์๋์ง, ์๋ค๋ฉด ์ ํฌ๊ฐ ๊ฐ์ง ๋ฐ์ดํฐ์ธ ํ๋ฆฌ๋๋ ์ ์ฐ๊ด์ํฌ ์ ์์์ง
๊ทธ๋ฆฌ๊ณ ๋ด์ผ์ ๊ฒฐ๊ณผ ๋ณด๊ณ ์ ์ด์์ ์์ฑํ ์์ ์ด์ค๋ ์ ๋ ์ค๋ ์ด๋ง ์ฌ๊ธฐ๊น์ฅ..