【发布时间】:2014-05-06 08:12:21
【问题描述】:
我有一个数字列表,当根据它的长度绘制时,它给了我一个高斯。我想计算这个高斯的标准偏差,但是我得到的值(使用 np.std() 函数)显然太小了(我得到的值类似于 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()
【问题讨论】:
-
你能提供你的数据值吗?可能在粘贴箱中?
-
这里是 pastebin 的链接:pastebin.com/nSnvuQLi
标签: python math graph statistics gaussian