gpt4 book ai didi

python - 距行中第一个非空元素的距离的 numpy 矩阵

转载 作者:行者123 更新时间:2023-12-04 03:34:24 24 4
gpt4 key购买 nike

我有一个 numpy 数组,其中每一行最多有 1 个非零元素。我需要有效地构建一个矩阵,其中元素 (i,j) 与该行中的非零元素之间存在水平距离。

对于 istante 假设元素 (10,6) 为 1,在矩阵中我需要构建元素 (10,6) 为 0,元素 (10,5) 为 1 元素 (10,7) 为 -1 等.

我需要这个算法是高效的。我想避免 for 循环并使用 np.roll 之类的可广播函数

最佳答案

如果每一行都有一个,你可以用一个简单的广播减法来完成:

np.arange(arr.shape[0]) - arr.argmax(1)[:, None]

关于python - 距行中第一个非空元素的距离的 numpy 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67203659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com