1

我正在尝试从 quantopian 遵循本教程,他们试图证明样本随着大小的增加逐渐表现出正态分布的特征。

numpy.random.randn()我尝试使用教程中所示的方法生成正态分布。

我了解此方法返回标准正态分布的样本和正态分布的样本,mean = 0并且standard deviation = 1

但是,当我检查这个分布的均值和标准差时,它们显示出奇怪的值,即mean = 0.23standard deviation = 0.49

代码:

import numpy as np
import matplotlib.pyplot as plt
#np.random.seed(123)
normal = np.random.randn(6)

print (normal.mean())
print (normal.std())

结果:

0.231567632423
0.488577812058

我猜这可能是因为我只看一个样本而不是整个分布,这并不完全正常。但如果是这样的话:

  1. 我应该从这个样本中得到什么特征?

  2. 教程的建议是不是错误的,因为它永远不会是正态分布?

4

1 回答 1

3

您的样本大小为 6。它不够大,无法接近正态分布。尝试使用 600 或 6000 以获得分布的良好表示。

import numpy as np

x = np.random.randn(600)
x.mean(), x.std()
# returns:
(-0.07760043571247623, 0.9664411074909558)

x = np.random.randn(6000)
x.mean(), x.std()
# returns:
(0.003908119246211815, 1.0001989021750033)

6 面骰子的平均掷骰数应为 3.5。但是,如果您只滚动 6 次,您的平均数不太可能达到 3.5。

于 2020-04-20T11:29:39.027 回答