假设有一个二维数组arr,形状为(m,n),其中第i列和第j列需要做整体操作,可以使用以下代码实现:

import numpy as np

# 生成一个5行3列的二维数组
arr = np.array([[1, 2, 3],
                [4, 5, 6],
                [7, 8, 9],
                [10, 11, 12],
                [13, 14, 15]])

# 定义需要操作的两列的索引值
col1 = 0
col2 = 2

# 对这两列做整体操作,例如求和
new_col = arr[:, col1] + arr[:, col2]

# 将新列赋值给另一个变量
new_arr = np.hstack((arr, new_col.reshape(-1, 1)))

print(new_arr)

输出结果为:

array([[ 1,  2,  3,  4],
       [ 4,  5,  6, 10],
       [ 7,  8,  9, 16],
       [10, 11, 12, 22],
       [13, 14, 15, 28]])

其中,np.hstack()函数用于将原数组和新列按列方向合并,形成新的二维数组new_arr。reshape(-1, 1)函数用于将新列变成列向量。

numpy 二维数组某两列做整体操作赋值给另一个变量

原文地址: http://www.cveoy.top/t/topic/bgdU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录