Study/2023 GDSC 혼자 공부하는 데이터 분석 with Python
4. 데이터 요약하기
JejuSudal
2023. 6. 5. 17:47
4-1. 통계로 요약하기
# describe 메서드
ns_book6.describe()
ns_book7.describe(percentiles=[0.3, 0.6, 0.9])
ns_book7.describe(include='object') # 숫자아니어도 포함
# 평균
ns_book7['대출건수'].mean()
# 중앙값
ns_book7['대출건수'].median()
# max, min
ns_book7['대출건수'].max()
ns_book7['대출건수'].min()
# 분위수
ns_book6['대출건수'].quantile(0.25)
ns_book6['대출건수'].quantile([ ])
# 분산
ns_book7['대출건수'].var()
# 표준편차
ns_book7['대출건수'].std()
# 최빈값
ns_book7['대출건수'].mode()
4-2. 분포로 요약하기
한눈에 확인할 수 있는 방법이 없나요?
산점도
import matplotlib.pyplot as plt
plt.scatter([1,2,3,4], [1,2,3,4])
plt.show()
plt.scatter(ns_book7['도서권수'], ns_book7['대출건수'], alpha=0.1)
plt.show()
히스토그램
## 1
plt.hist([0,3,5,6,7,7,9,13], bins=5)
plt.show()
import numpy as np
np.histogram_bin_edges([0,3,5,6,7,7,9,13], bins=5) ## bins=나누는 구간의 수
## numpy로 평균, 표편 구하기
np.random.seed(42) ## 난수 생성
random_samples = np.random.randn(1000)
print(np.mean(random_samples), np.std(random_samples))
>>> 0.019, 0.978 -> 표준정규 분포를 다른다고 할 수 있음
plt.hist(random_samples)
plt.show()
## 2
plt.hist(ns_book7['대출건수'])
plt.yscale('log')
plt.show()
상자수염 그래프
## 1
plt.boxplot(ns_book7[['대출건수', '도서권수']])
plt.yscale('log')
plt.show()
## 2
plt.boxplot(ns_book7[['대출건수', '도서권수']], vert=False) ## ver=False: 수평으로
plt.xscale('log')
plt.show()
728x90