我有一个数字的列表,当与它的长度相对应时,它给了我一个高斯分布。我想计算这个高斯函数的标准差,但是我得到的值(使用np.标准()函数)显然太小了(我得到的值是0.00143…而它应该是8.234。我想我一直在计算y轴上的标准偏差,而不是x轴上的标准偏差(这是在标准偏差应该在的范围内),但是我有点不明白如何去做?在
我已经包括了我的代码和一张高斯图,我正试图计算标准偏差。在#max_k_value_counter counts the number of times the maximum value of k comes up.
max_k_value_counter_sum = sum(max_k_value_counter)
prob_max_k_value = [0] * len(max_k_value_counter)
# Calculate the probability of getting a particular value for k
for i in range(len(max_k_value_counter)):
prob_max_k_value[i] = float(max_k_value_counter[i]) / max_k_value_counter_sum
print "Std dev on prob_max_k_value", np.std(prob_max_k_value)
# Plot p(k) vs k_max to calculate the errors on k
plt.plot(range(len(prob_max_k_value)), prob_max_k_value)
plt.xlim(0, 200)
plt.xlabel(r"$k$", fontsize=16)
plt.ylabel(r"$p(k)$", fontsize=16)
plt.show()