删除或替换python中的矩阵
嗨,我有这个矩阵 e、 g 如何删除所选列的最底部的值(例如col=1),并将顶部的其余值向下推,如果有空格,则将“0” 所以矩阵变成了删除或替换python中的矩阵,python,numpy,Python,Numpy,嗨,我有这个矩阵 e、 g 如何删除所选列的最底部的值(例如col=1),并将顶部的其余值向下推,如果有空格,则将“0” 所以矩阵变成了 [[1. 0. 3. ] [4. 2. 6. ] [7. 5. 9. ]] 滚动第二列,然后将该列的第一个元素设置为零 a=np.arange(1,10)。重塑(3,3) a[:,1]=np.roll(a[:,1,1) a[0,1]=0 印刷品(a) 输出: [[1 0 3] [4 2 6] [7 5 9]] 我建议您可以在这里使用np.pad: 例如
[[1. 0. 3. ]
[4. 2. 6. ]
[7. 5. 9. ]]
滚动第二列,然后将该列的第一个元素设置为零
a=np.arange(1,10)。重塑(3,3)
a[:,1]=np.roll(a[:,1,1)
a[0,1]=0
印刷品(a)
输出:
[[1 0 3]
[4 2 6]
[7 5 9]]
我建议您可以在这里使用np.pad
:
例如
>>将numpy作为np导入
>>>a=np.arange(1,10)。重塑(3,3)
>>>打印
[[1 2 3]
[4 5 6]
[7 8 9]]
>>>a[:,1]=np.pad(a[:,1],pad_width=1,mode='constant')[:a.shape[1]]
>>>打印
[[1 0 3]
[4 2 6]
[7 5 9]]
创建一个临时数组以保存新列的值:
In [216]: temp = np.zeros(a.shape[0],a.dtype)
In [217]: temp[1:] = a[:-1,1]
将其复制到a
:
In [218]: a[:,1] = temp
In [219]: a
Out[219]:
array([[1, 0, 3],
[4, 2, 6],
[7, 5, 9]])
a=np.arange(9)。重塑(3,3)这提供了一个从0开始的矩阵
In [216]: temp = np.zeros(a.shape[0],a.dtype)
In [217]: temp[1:] = a[:-1,1]
In [218]: a[:,1] = temp
In [219]: a
Out[219]:
array([[1, 0, 3],
[4, 2, 6],
[7, 5, 9]])