我是Python的新手,我想生成具有特定均值和方差的正态分布的1000个样本。我知道一个叫做NumPy的库,我想知道我是否正确地使用它了。这是我的代码:
import numpy
a = numpy.random.normal(0, 1, 1000)
print(a)
这里的0代表平均值,1代表标准差(方差的平方根),1000代表总体大小。
这是正确的方法吗?还有更好的方法吗?
是的,这是在正态分布N(0,1)中生成1000个样本的方法。
您可以看到,这1000个样本的输出大多数在-3和3之间,因为99.73%将在加/减3个标准偏差内:
翻译:下面的代码生成了彩色图表:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
np.random.seed(7)
y = np.random.normal(0, 1, 1000)
colors = cm.rainbow(np.linspace(0, 1, 11))
for x,y in enumerate(y):
plt.scatter(x,y, color=colors[np.random.randint(0,10)])
然而,生成单色图表速度更快:
np.random.seed(7)
x = [i for i in range(1, 1001)]
y = np.random.normal(0, 1, 1000)
plt.scatter(x, y, color='navy')
numpy
运行良好。 - M Z