我只能找到使用坐标元组分配特定值的结果,例如 this one .
我想将值分配给二维数组作为其坐标的函数。最简单的情况是将每个元素的值设置为其第二个索引(例如 x 坐标)。这样,
x[0][0] = 0
x[1][0] = 0
...
x[2][0] = 0
x[0][1] = 1
x[0][2] = 2
...
更复杂的情况是将这些值设置为到特定点 (x, y)
的欧几里得距离。
我目前的解决方案是使用 for 循环,这绝对是低效的。矢量化实现会很好。
我当前的实现:
x_mask = np.zeros((256, 256))
for i in range(256):
for j in range(256):
x_mask[i][j] = j
最佳答案
您可以分配一个范围并利用 NumPy broadcasting :
A = np.zeros((256, 256))
A[:] = range(A.shape[1])
# or A[:] = np.arange(A.shape[1])
您选择的方法将取决于您希望应用的功能。
关于python - 如何将值作为索引的函数赋值给 numpy 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51554733/