Python 如何仅减去numpy数组中行的第一个数
例如,假设我有:Python 如何仅减去numpy数组中行的第一个数,python,numpy,Python,Numpy,例如,假设我有: a = np.array([[1, 2, 3, 6], [2, 45, 34, 56],[3, 8, 56, 45]]) 我想从所有行的第一个数字中减去1。所以它打印: array([[0, 2, 3, 6], [1, 45, 34, 56],[2, 8, 56, 45]]) 我已经试过了 a = np.array([[1, 2, 3, 6], [2, 45, 34, 56],[3, 8, 56, 45]]) -1 但是,它从所有数字中减去,而不仅仅是从第一个数字中减去
a = np.array([[1, 2, 3, 6], [2, 45, 34, 56],[3, 8, 56, 45]])
我想从所有行的第一个数字中减去1。所以它打印:
array([[0, 2, 3, 6], [1, 45, 34, 56],[2, 8, 56, 45]])
我已经试过了
a = np.array([[1, 2, 3, 6], [2, 45, 34, 56],[3, 8, 56, 45]]) -1
但是,它从所有数字中减去,而不仅仅是从第一个数字中减去。我相信您正在寻找的是:
a[:,0]-=1
[:,0]
将访问第一个轴上的所有值,第零个索引将访问第二个轴上的所有值。我相信您要查找的是:
a[:,0]-=1
[:,0]
将访问第一轴上的所有值,第零个索引将访问第二轴上的所有值。为了完整起见:
您的numpy 2D阵列如下所示:
[[ 1 2 3 6]
[ 2 45 34 56]
[ 3 8 56 45]]
您要做的是从第一列中减去1。这可以通过切片整个第一列并从其项目中减去1来实现 在numpy中,您可以切片列,如
数组[:,col_num]
或行,如数组[行数,:]
,其中:
分别表示所有行
或所有列
因此,您的解决方案是:
a[:,0] -=1
选择索引为0的行的所有项,并从中减去1
我强烈建议您学习本教程的基本和中级python教程,因为它们将使您熟悉这些概念和许多其他概念。希望这有帮助。为了完整起见: 您的numpy 2D阵列如下所示:
[[ 1 2 3 6]
[ 2 45 34 56]
[ 3 8 56 45]]
您要做的是从第一列中减去1。这可以通过切片整个第一列并从其项目中减去1来实现 在numpy中,您可以切片列,如
数组[:,col_num]
或行,如数组[行数,:]
,其中:
分别表示所有行
或所有列
因此,您的解决方案是:
a[:,0] -=1
选择索引为0的行的所有项,并从中减去1
我强烈建议您学习本教程的基本和中级python教程,因为它们将使您熟悉这些概念和许多其他概念。希望这有帮助。<代码>a[:,0]-=1<代码>a[:,0]-=1?