从作用于整个数组的函数访问索引
Accessing indices from functions acting on entire arrays
我想要一个函数,f
,给定一个 (n, 1) numpy 数组 returns 一个 (n, 1) numpy 数组,其中的值是原始值加上它们的 0 -轴索引。
例如:
f(np.array([[0],[0]])) = np.array([[0],[1]])
f(np.array([[4],[2],[3]])) = np.array([[4],[3],[5]])
是否有一些命令,cmd(x)
,returns 函数正在操作的值的索引? f
的代码如下所示:
def f(x):
return x + cmd(x)
如果您想要无论 x
的形状如何都可以使用的东西,您需要像这样的东西:
np.indices(x.shape)[0] + 1
如果您使用的是大型阵列,可以优化它以构建较小的阵列。
我想要一个函数,f
,给定一个 (n, 1) numpy 数组 returns 一个 (n, 1) numpy 数组,其中的值是原始值加上它们的 0 -轴索引。
例如:
f(np.array([[0],[0]])) = np.array([[0],[1]])
f(np.array([[4],[2],[3]])) = np.array([[4],[3],[5]])
是否有一些命令,cmd(x)
,returns 函数正在操作的值的索引? f
的代码如下所示:
def f(x):
return x + cmd(x)
如果您想要无论 x
的形状如何都可以使用的东西,您需要像这样的东西:
np.indices(x.shape)[0] + 1
如果您使用的是大型阵列,可以优化它以构建较小的阵列。