numpy数组删除列

2024年06月07日 numpy数组删除列 极客笔记

numpy数组删除列

在处理数据时,有时候我们需要删除某一列的数据。对于numpy数组,我们可以使用numpy.delete()函数来删除指定列。本文将详细介绍如何使用numpy数组删除列。

numpy.delete()函数

numpy.delete()函数用于删除numpy数组中的指定行或列。其语法如下:

numpy.delete(arr, obj, axis=None)

参数说明:

  • arr:待操作的数组
  • obj:要删除的行或列的索引
  • axis:指定删除的是行还是列,axis=0表示删除行,axis=1表示删除列。如果不指定axis,则默认为展开数组。

该函数会返回一个删除指定行或列后的新数组,并不会改变原数组。

示例

假设我们有一个二维numpy数组如下:

import numpy as np

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

现在我们想删除第一列,可以使用如下代码:

new_arr = np.delete(arr, 0, axis=1)
print(new_arr)

运行结果如下:

[[2 3]
 [5 6]
 [8 9]]

示例

示例一

我们首先生成一个示例数组:

arr = np.array([[1, 2, 3, 4],
                [5, 6, 7, 8],
                [9, 10, 11, 12]])

现在我们想要删除第二列:

new_arr = np.delete(arr, 1, axis=1)
print(new_arr)

运行结果如下:

[[ 1  3  4]
 [ 5  7  8]
 [ 9 11 12]]

示例二

我们再次生成一个示例数组:

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

现在我们想要删除第一行:

new_arr = np.delete(arr, 0, axis=0)
print(new_arr)

运行结果如下:

[[4 5 6]
 [7 8 9]]

注意事项

  • 删除列时,需要注意指定axis为1。
  • 删除的是副本,原数组不会被改变。

通过以上示例,我们可以看到如何使用numpy数组删除列。

本文链接:http://so.lmcjl.com/news/6139/

展开阅读全文