데이터 분석을 하기 전에 산포도를 보십시오

5822 단어 기계 학습Python
데이터 분석을 시작할 때 데이터의 평균과 분산 등을 확인하고 싶다요약 통계량.
하지만 개요 통계량만 확인하면 부족할 수도 있다.
예: 이런 데이터1의 경우
import pandas as pd
import seaborn as sns

# データの読み込み
df = pd.read_csv('https://git.io/vD7ui')

# 散布図
sns.lmplot(x='x', y='y', col='data', hue='data', col_wrap=2, fit_reg=False, data=df)

산포도에 나타난 데이터와 다르지만 평균값과 표준 편차값은 같다.
# 平均
df.groupby('data').mean()
data
x
y
0
9
7.500909
1
9
7.500909
2
9
7.500000
3
9
7.500909
# 標準偏差
df.groupby('data').std()
data
x
y
0
3.316625
2.031568
1
3.316625
2.031657
2
3.316625
2.030424
3
3.316625
2.030579
작은 가격은 다르지만 거의 같은 가격입니다.
또 회귀 직선도 완전히 같은 직선으로 바뀐다.
# 散布図 + 回帰直線
sns.lmplot(x='x', y='y', col='data', hue='data', col_wrap=2, fit_reg=True, data=df)

pandas에서 describe 방법으로 요약 통계량을 요약할 수 있다.
# 要約統計量
df.groupby('data').describe()
x   y
data            
0   count   11.000000   11.000000
mean    9.000000    7.500909
std 3.316625    2.031568
min 4.000000    4.260000
25% 6.500000    6.315000
50% 9.000000    7.580000
75% 11.500000   8.570000
max 14.000000   10.840000
1   count   11.000000   11.000000
mean    9.000000    7.500909
std 3.316625    2.031657
min 4.000000    3.100000
25% 6.500000    6.695000
50% 9.000000    8.140000
75% 11.500000   8.950000
max 14.000000   9.260000
2   count   11.000000   11.000000
mean    9.000000    7.500000
std 3.316625    2.030424
min 4.000000    5.390000
25% 6.500000    6.250000
50% 9.000000    7.110000
75% 11.500000   7.980000
max 14.000000   12.740000
3   count   11.000000   11.000000
mean    9.000000    7.500909
std 3.316625    2.030579
min 8.000000    5.250000
25% 8.000000    6.170000
50% 8.000000    7.040000
75% 8.000000    8.190000
max 19.000000   12.500000
평균과 표준 편차는 아까 보듯이 4분의 1이 다소 다르다.특히 데이터3는 크게 다르다.
이렇게 산포도는 다르지만 통계량과 회귀직선이 같은 데이터를 연맹의 예라고 부른다.따라서 통계량뿐만 아니라 산포도를 그리는 것도 중요하다.
다만, 현실적인 데이터에서 나는 이차원적인 것이 매우 적다고 생각한다.이 경우 PCA(Primary Analysis Analysis)로 차원을 2차원으로 낮추어 가시화하는 등의 방법이 필요하다.
데이터 열의 같은 값은 같은 데이터를 나타낸다

좋은 웹페이지 즐겨찾기