我想从表示为二维数组的对称矩阵的下三角创建一个字典。例如,如果 numpy 数组是;
array([[0, 2, 3],
[2, 0, 4],
[3, 4, 0]])
然后我希望字典看起来像;
{('1', '0'): 2, ('2', '0'): 3, ('2', '1'): 4}
矢量也有类似的帖子;
将 Numpy 数组转换为稀疏字典的最快方法? https://stackoverflow.com/questions/877578/fastest-way-to-convert-a-numpy-array-into-a-sparse-dictionary
我对 python 比较陌生,所以感谢任何帮助/建议。
>>> arr =[[0, 2, 3],
[2, 0, 4],
[3, 4, 0]]
>>> dict(((j,i), arr[i][j]) for i in range(len(arr)) for j in range(len(arr[0])) if i<j)
{(2, 0): 3, (1, 0): 2, (2, 1): 4}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)