統計基本量
Coding(平均・分散・標準偏差)
$ 平均(mean): \ \overline{x} = \frac{1}{n} \sum_{i=1}^n x_i, $ 分散(variance): \ \sigma^2 = \frac{1}{n} \sum_{i=1}^n (x_i-\overline{x})^2,
$ 標準偏差(standard \ deviation, SD): \ \sigma = \sqrt{\frac{1}{n} \sum_{i=1}^n (x_i-\overline{x})^2}
code: Python
import numpy as np
# 入手元:気象庁ホームページ
# 2018年4月の東京の最高気温(日別)
x = np.array([21.9, 24.5, 23.4, 26.2, 15.3, 22.4, 21.8, 16.8,
19.9, 19.1, 21.9, 25.9, 20.9, 18.8, 22.1, 20.0,
15.0, 16.0, 22.2, 26.4, 26.0, 28.3, 18.7, 21.3,
22.5, 25.0, 22.0, 26.1, 25.6, 25.7])
mean = x.sum() / len(x)
var = ((x - mean)**2).sum() / len(x)
std = np.sqrt(((x - mean)**2).sum() / len(x))
print('平均: {}'.format(mean))
print('分散: {}'.format(var))
print('標準偏差: {}'.format(std))
print('平均: {}'.format(x.mean()))
print('分散: {}'.format(x.var()))
print('標準偏差: {}'.format(x.std()))
--------------------------------------------------------------------------
平均: 22.05666666666667
分散: 12.185788888888888
標準偏差: 3.490814931916169
平均: 22.05666666666667
分散: 12.185788888888888
標準偏差: 3.490814931916169
--------------------------------------------------------------------------
Coding(共分散・相関係数)
$ 共分散(covariance): \ \sigma_{xy} = \frac{1}{n} \sum_{i=1}^n(x_i - \overline{x})(y_i - \overline{y}),
$ 相関係数(correlation \ coefficient): \ \frac{\sigma_{xy}}{\sigma_x \sigma_y}
相関係数は、共分散を$ xと$ yの標準偏差で割ったもので、1から-1までの値を取ります。
code: Python
import numpy as np
# 2018年4月の東京の最高気温(日別)
x = np.array([21.9, 24.5, 23.4, 26.2, 15.3, 22.4, 21.8, 16.8,
19.9, 19.1, 21.9, 25.9, 20.9, 18.8, 22.1, 20.0,
15.0, 16.0, 22.2, 26.4, 26.0, 28.3, 18.7, 21.3,
22.5, 25.0, 22.0, 26.1, 25.6, 25.7])
# 2018年4月の札幌の最高気温(日別)
y = np.array([8.3, 13.0, 8.4, 7.9, 7.0, 3.7, 6.1, 8.5, 8.6,
11.9, 12.1, 14.4, 7.0, 10.5, 6.6, 10.6, 16.6,
19.1, 20.1, 19.8, 24.5, 12.6, 16.4, 13.0, 13.3,
14.1, 14.4, 17.0, 21.3, 24.5])
cov_xy = ((x - x.mean())*(y - y.mean())).sum() / len(x)
std_x = x.std()
std_y = y.std()
print('共分散: {}'.format(cov_xy))
print('相関係数: {}'.format(cov_xy / (std_x * std_y)))
--------------------------------------------------------------------------
共分散: 5.487211111111111
相関係数: 0.2897289700420625
--------------------------------------------------------------------------