1 回答
TA贡献1816条经验 获得超6个赞
注释掉一行实际上解决了问题(或者至少它运行了,我无法验证输出)。错误消息很有用:x 和 y 应该是相同的长度。
if max(bin_edges1) < max_value1:
bin_edges1.append(max(bin_edges1) + step1)
# bins1.append(max(bins1) + step1) <-- this one
此外,您的代码很难遵循,因为您混淆了您的工具。您也将其定义raw_data1为 python 列表bins1,并使用列表理解。
raw_data1 = [212, 869, 220, 654, 11, 624, 420, 121, 428, 865, 799, 405, 230, 670, 870, 366, 99, 55, 489, 312, 493, 163, 221, 84, 144, 48, 375, 86, 168, 100]
..
bins1 = [i for i in range(min_value1, max_value1 + 1, step1)]
然后你使用 numpy.linspace 为x1.
x1 = np.linspace(min(bins1), max(bins1), 250)
还涉及熊猫:
data1 = pd.DataFrame({'Frequency': pd.cut(raw_data1, bin_edges1).value_counts()})
我建议主要使用一个,仅在必要时使用其他工具。
添加回答
举报