728x90
๋น ๋ฐ์ดํฐ ๋ถ์ ๊ธฐ์ฌ ์ค๊ธฐ - ์์ ํ 1 ์ ๋ฆฌ๋ณธ
๐จ ๋ชจ๋ ์ฝ๋๋ ํ์ด์ฌ ๊ธฐ์ค์ ๋๋ค.
1. ํจ์ ์ฌ์ฉ
def df_events(x):
if (x['Events'] == 1):
return x['Sales'] * 0.8
else:
return x['Sales']
df['RSales'] = df.apply(df_events, axis=1)
2. Merge์ dropna ์ฌ์ฉ๋ฒ โญ๏ธ ( 7ํ ์์ ํ 1 dropna ์ ์ถ )
# basic1 ๋ฐ์ดํฐ์ basic3 ๋ฐ์ดํฐ๋ฅผ 'f4'๊ฐ์ ๊ธฐ์ค์ผ๋ก ๋ณํฉํ๊ธฐ
df = b1.merge(b3, how='inner', on='f4')
# ๋ณํฉํ ๋ฐ์ดํฐ์์ r2๊ฒฐ์ธก์น๋ฅผ ์ ๊ฑฐํ๊ธฐ
df = df.dropna(subset=['r2'])
3. ์ ๋ ฌ
# ์ค๋ฆ์ฐจ์ : 1, 2, 3, 4
df = df[df['f2'] == 0].sort_values('age', ascending = True).head(20)
# ๋ด๋ฆผ์ฐจ์ : 4, 3, 2, 1
df = df.reset_index().sort_values('f5', ascending = False)
4. IQR โญ๏ธ ( 7ํ ์์ ํ 1 ์ ์ถ )
Q1 = np.percentile(df['Fare'], 25)
Q3 = np.percentile(df['Fare'], 75)
IQR = Q3 - Q1
out1 = df[df['Fare'] < (Q1 - 1.5 * IQR)]
out3 = df[df['Fare'] > (Q3 + 1.5 * IQR)]
5. ์ฌ๋ฆผ, ๋ด๋ฆผ, ๋ฒ๋ฆผ
up = np.ceil(df['age']).mean()
down = np.floor(df['age']).mean()
drop = np.trunc(df['age']).mean()
6. ์ค์ผ์ผ๋ง ํ ์๋ ์ฒจ๋ ๊ตฌํ๊ธฐ
df['SalePrice'] = np.log1p(df['SalePrice'])
spskew2 = df['SalePrice'].skew() # DataFrame.skew() ์๋
spkurt2 = df['SalePrice'].kurt() # DataFrame.kurt() ์ฒจ๋
7. ๊ทธ๋ฃน์ผ๋ก ๋ฌถ๊ธฐ โญ๏ธ ( 7ํ ์์ ํ 1 ์ ์ถ )
# 'city'์ 'f2'์ ๊ธฐ์ค์ผ๋ก ๋ฌถ์ด ๊ทธ๋ฃน ํฉ๊ณ ๊ณ์ฐ
df2 = df.groupby(['city','f2']).sum()
8. ๊ฐ ๋์ฒด
# 'f4'์ปฌ๋ผ์ ๊ฐ์ด 'ESFJ'์ธ ๋ฐ์ดํฐ๋ฅผ 'ISFJ'๋ก ๋์ฒด
df['f4'] = df['f4'].replace('ESFJ', 'ISFJ')
9. ์์, ํ์ ๊ฐ ๊ตฌํ๊ธฐ
# ์์ 5%์ ํ์ 5%
low = df['f5M'].quantile(0.05)
high = df['f5M'].quantile(0.95)
10. ๋ ์ง ๋ณํ
df['Date'] = pd.to_datetime(df['Date'])
df['year'] = df['Date'].dt.year
df['month'] = df['Date'].dt.month
df['wo'] = df['Date'].dt.dayofweek # ํ์ผ๊ณผ ์ฃผ๋ง ๋๋ ๋ ์ฌ์ฉ
11. ๋์ผํ ๊ฐ์๋ก ๋๋๊ธฐ
๋์ผํ ๊ฐ์๋ก ๋์ด ์์ผ๋ก 3๊ทธ๋ฃน์ผ๋ก ๋๋ ๋ค ๊ฐ ๊ทธ๋ฃน์ ์ค์๊ฐ์ ๋ํ์์ค
df['range'] = pd.qcut(df['age'], q=3, labels=['1', '2', '3'])
12. ์ค๋ณต๋ฐ์ดํฐ ๋ฐ์ ์ ๋ค์ ๋ฐ์ดํฐ ์ญ์
df = df.drop_duplicates(subset=['age'])
13. ๊ทธ ์ธ ์์ฃผ ์ฌ์ฉ๋๋ ํจ์
์ด๋ฆ | ์ฌ์ฉ๋ฒ |
๋ถ์ฐ | df['f1'].var() |
ํ๊ท | df['f5'].mean() |
์ค์๊ฐ | df['f1'].fillna(df['f1'].median()) |
์ต๋น๊ฐ | df['f1'].fillna(df['f1'].mode()[0]) |
ํ์คํธ์ฐจ | df[conI]['f1'].std() |
๋์ ํฉ | df[con]['f1'].cumsum() |
728x90
'๐.์๊ฒฉ์ฆ > ๐.๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ค๊ธฐ] ๋น ๋ฐ์ดํฐ ๋ถ์ ๊ธฐ์ฌ ์์ ํ 3 ์ ๋ฆฌ (Python) (0) | 2023.12.04 |
---|---|
[์ค๊ธฐ] ๋น ๋ฐ์ดํฐ ๋ถ์ ๊ธฐ์ฌ ์์ ํ 2 ์ ๋ฆฌ (Python) (0) | 2023.12.03 |
๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ ์ค๊ธฐ ์์ ์ ๋ฆฌ๋ณธ (0) | 2023.11.29 |
๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ ํ๊ธฐ ์ ๋ฆฌ๋ณธ (2) | 2023.10.17 |
๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ 7ํ ํ๊ธฐ ํฉ๊ฒฉ ํ๊ธฐ (๊ต์ฌ X) (2) | 2023.10.15 |