关于Scipy wasserstein_distance参数对应PSD坐标轴的技术问询
一维PSD的Wasserstein距离(EMD)参数对应说明
直接明确参数和PSD坐标轴的对应关系:
u_values/v_values:对应PSD的**X轴(粒径)**数据,也就是两组粒度分布的粒径点集合u_weights/v_weights:对应PSD的**Y轴(概率密度值)**数据,也就是每个粒径点对应的概率密度权重
举个实际代码示例,假设你有两组数据:
- 组1:粒径数组
particle_sizes_1 = [5, 10, 15, 20],对应概率密度pdf_1 = [0.05, 0.3, 0.5, 0.15] - 组2:粒径数组
particle_sizes_2 = [8, 12, 18],对应概率密度pdf_2 = [0.2, 0.6, 0.2]
调用方式如下:
from scipy.stats import wasserstein_distance # 计算EMD(Wasserstein距离) emd_value = wasserstein_distance( u_values=particle_sizes_1, v_values=particle_sizes_2, u_weights=pdf_1, v_weights=pdf_2 )
额外注意:
- 两组粒径数组的长度不需要一致,函数会自动处理分布的匹配计算
- 权重数组必须和对应粒径数组长度相同,且权重总和建议归一化到1(如果你的原始概率密度已经是归一化后的结果,直接用就行;如果是原始计数/频率,需要先除以总和转成概率权重)
内容的提问来源于stack exchange,提问作者odar
相关产品推荐
相关产品推荐

