我有2CDF,必须找到最大的逐点距离。我创建了直方图并绘制了两者。这些值是由一个随机函数生成的,它取两个随机数1-6之和100次,类似于两个骰子。但是,我找不到绘图上两条线之间的最大距离。你知道吗
因此,在第一次运行时,我有一个100个观察值的列表,dicesum=: {1: 5, 2: 8, 3: 7, ...., 100:4}
。你知道吗
1到100是旋转的次数,右边是总和。我用这个代码生成了直方图:
keys,values = zip(*dicesum.items())
plt.hist(values, bins=30)
plt.gca().set(title='Frequency Histogram', ylabel='Frequency');
plt.show()
现在我用以下代码绘制CDF:
x = np.sort(values)
y = np.arange(1, len(x)+1/float(len(x)))
plt.plot(x, y, color='b')
plt.xlabel('Sum')
plt.ylabel('CDF')
plt.show()
现在,在同一个图中绘制两个观测值,以查看它们的差异:
现在我想得到它们之间的最大距离,在哪一点上它们彼此最远。你知道吗
为了测量标准中描述的两个这样的CDF图之间的距离,可以使用Kolmogorov–Smirnov测试两个分布之间的相等性。或者可以使用两个CDF的最大逐点距离。我想可能会有帮助。你知道吗
相关问题 更多 >
编程相关推荐