如何在numpy中获取2D数组列的辅助因子的视图

时间:2018-08-31 14:18:07

标签: python numpy numpy-ndarray

我正在使用numpy。
我已将矩阵Q定义为2D数组。我想要一个没有第i个元素的第i列的视图(即,我不想有一个副本)。例如,Matlab中的代码将是:

qi=Q(1:i-1 i+1:end, i)

使用切片的pythonic方法是什么(我不想使用np.delete)?

谢谢

1 个答案:

答案 0 :(得分:0)

这是我的答案:

`def partialMatrix(arr, row, col):
row -= 1
col -= 1
adjointArr = np.zeros((arr.shape[0]-1, arr.shape[1]-1))
r, c = 0, 0
for i in range(len(arr)):
    if i != row:
        for j in range(len(arr)):
            if j != col:
                adjointArr[r][c] = arr[i][j]
                c += 1
        r += 1
        c = 0   
return adjointArr`

`def cofactor(partial, row, col):
return (-1) ** (row + col) * np.linalg.det(partial)`