numpy tricks(二)—— 删除多维数组的行或列

本文介绍了在Python中使用NumPy库进行数组元素删除的三种方法:使用切片创建视图、利用mask屏蔽指定列及采用np.delete()函数。重点讲解了如何针对不同需求选择合适的方法来高效地删除多维数组中的行或列。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

numpy.delete

  • numpy 下的多维数组,如果要删除其中的某些行,或某些列,不可以用置空的方式,进行设置;
    • A[1, :] = None, ⇒ 会将 A 中的第一行数据全部置为 Nan

1. 使用切片(slice)

比如删除第一行:

B = A[1:, :]

注意此时得到的 B 是 A 通过切片索引的方式得到的,也即 B 相当于 A 的一个视图(view),此时对 B 的任何修改操作,也会顺带修改 A 中的相应数据。

2. 使用 mask

删除第 0 列和第 2 列:

mask = [True]*A.shape[1]
mask[0, 2] = False
B = A[:, mask]

3. 使用 np.delete()

对于一个二维数组,axis=0,表示行,axis=1,表示列

这里删除第 0 行,第 2 行,第 4 行:

np.delete(A, [0, 2, 4], axis=0)

转载于:https://www.cnblogs.com/mtcnn/p/9421879.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值