본문으로 바로가기

pd.Series : key가 있는 Series

temp = pd.Series([1, 3, 5, 7], index=['a', 'b', 'c', 'd'])
temp.index / temp.values

temp['a'] 또는 temp.a (열 이름이 영어 단순 단어로 형성되어 있다면)


1. Series의 유용한 함수

1) .value_counts()

df['edu'].value_counts(sort=False)

 

 

2) .plot(kind=' ')

df['edu'].value_counts().plot(kind='pie')
df['edu'].value_counts().plot(kind='bar')

 

 

3) .replace()

df['gender'] = df['gender'].replace([1,2], ['male','female'])
df['marriage'] = df['marriage'].replace([1, 2, 3], ['single', 'married', 'other'])

 

 

4) 기술통계분석

df['amount'].describe()

df['amount'].max()
df['amount'].min()
df['amount'].sum()
df['amount'].mean()
df['amount'].var()
df['amount'].std()
# df[df['amount']<1000000]['amount'].std()

 

 

5) hist()

df['amount'].hist(bins=50, figsize=20,15)

 

 

6) 분포의 왜도(skewness)와 첨도(kurtosis)

- 정규분포인지 아닌지 판단 가능

- 이상치 여부 확인 가능

 

6.1 왜도 (Skewness)

- 분포에서 긴 꼬리가 왼쪽에 있으면(분포가 우측으로 치우친 경우) 음(negative)의 왜도
- 분포에서 긴 꼬리가 오른쪽에 있으면(분포가 왼쪽으로 치우친 경우) 양(positive)의 왜도

df['amount'].skew() 
# >8.727245406515182

 

6.2 첨도 (Kurtosis)

- 1에 가까울수록 정규분포라고 가정할 수 있음 (절대값 기준 8 또는 10을 미초과)

df['amount'].kurtosis()
# >94.95150601199587