我想为一些 numpy 数组(每个数组的长度不同)制作一组可比较的经验 CDF,并将它们存储在 pandas 数据框中:
a = scipy.randn(100)
b = scipy.randn(500)
# ECDF from statmodels
cdf_a = ECDF(a)
cdf_b = ECDF(b)
问题是它们cdf_a.x, cdf_a.y
的长度不同cdf_b.x, cdf_b.y
,我希望它们的长度相同,即使用相同数量的 bin 来计算 CDF,以便可以从 pandas DataFrame 以相同的比例绘制它们。这是不可能的:
df = pandas.DataFrame({"cdf_a": cdf_a.y, "cdf_b": cdf_b.y})
由于 cdf 的长度不同。在计算 CDF 时如何分箱a
和b
使用类似的箱,以便我得到可比较的相同长度的向量?
这是最好的解决方案吗?
bins = np.linspace(0, 1, 10)
v1 = cdf_a(bins)
v2 = cdf_b(bins)