选择轴以编程方式分配到NumPy数组

2024-04-16 08:05:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个三维numpy阵列。你知道吗

我可以使用简单的索引修改任意元素

D[:,:,0]=myval
D[:,:10,1]=list(range(10))

有时我需要更改给定索引处的元素,而索引所指的轴不是预先确定的。 我想抓住以下两个变量发生变化的情况

D[:,:10,1]=list(range(10)) ->axis 1
D[:10,:,1]=list(range(10)) ->axis 0

比如:

f(D,axis=0/1,index=1,newval)

Tags: numpy元素index情况rangelistaxis所指
1条回答
网友
1楼 · 发布于 2024-04-16 08:05:04

我将使用一个索引元组,其中包含由helper对象^{}准备的切片对象。如果axis是0或1,那么下面的结果是将list(range(10))分配给D[:10, :, 1]D[:, :10, 1]。你知道吗

idx = [np.s_[:], np.s_[:], 1] 
idx[axis] = np.s_[:10]
D[tuple(idx)] = list(range(10))

相关问题 更多 >