我正在尝试计算直方图之间的距离矩阵。我只能找到用于计算 2 个直方图之间距离的代码,而我的数据超过 10。我的数据是一个 CSV 文件,直方图的列加起来为 100。其中包含大约 65,000 个条目,我只运行 20 个% 的数据,但代码仍然无法正常工作。
我已经尝试过scipy.spatial.distance_matrix 中的 distance_matrix ,但它忽略了数据是直方图的面孔,并将它们视为正常的数值数据。我也尝试过 wasserstein 距离,但错误是object too deep for desired array
from scipy.stats import wasserstein_distance
distance = wasserstein_distance (df3,df3)
我希望结果有点像这样:
0 1 2 3 4 5 6
0 0.000000 259.730341 331.083554 320.302997 309.577373 249.868085
1 259.730341 0.000000 208.368304 190.441382 262.030304 186.033572
2 331.083554 208.368304 0.000000 112.255111 256.269253 227.510879
3 320.302997 190.441382 112.255111 0.000000 246.350482 205.346804
4 309.577373 262.030304 256.269253 246.350482 0.000000 239.642379
但这是一个错误
ValueError: object too deep for desired array