python - numpy 数组子集的元素平方

标签 python numpy numpy-slicing

我有以下 numpy 数组

np.array([[1, 2, 3],
          [4, 5, 6],
          [7, 8, 9]])

我只想通过按原样保留第一列来计算第二列和第三列的元素平方,并产生结果,

np.array([[1,  4,   9],
          [4, 25, 36]],
          [7, 64, 81]])

我尝试过什么 我提取了第一列。 然后我提取了第二列和第三列。使用 numpy.square 函数找到正方形。

arr1 = arr[:, 0]
arr2 = np.square(arr[:, 1:])

然后将它们连接起来

np.c_[arr1, arr2]

有单步解决方案吗?

最佳答案

使用[:, 1:]选择非第一列的所有元素。

arr[:, 1:] **= 2

关于python - numpy 数组子集的元素平方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71626166/

相关文章:

python - 谷歌colab中的for循环列表索引超出范围

python - 在 NumPy 中将字典转换为数组

python - 三角形 Numpy 切片

python - 用于 Python 的 XMPP 服务器

python - 应用transform() pandas时如何识别变化的值

python卡住数据类不可变对象(immutable对象).__setattr__

python - 在数组边界上切片 ndarrays

python - 从 float32 -> float64 回到 float32 我会失去精度吗?

python - numpy.polyfit 没有关键字 'cov'

python - 如何截断一个numpy数组?