You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何根据标签NumPy数组的值删除X_train的指定行?

解决方案:用Numpy布尔索引快速筛选行

这问题用Numpy的布尔索引就能轻松解决,步骤超简单,我给你写清楚:

首先先把你的初始数据定义好:

import numpy as np

# 你的原始训练数据
X_train = np.arange(1,16).reshape(5,3)
# 对应的标签向量
labels2 = np.array([0,-1,1,2,-1])

接下来生成一个布尔掩码,用来标记哪些行需要保留——我们要保留所有labels2值不等于-1的行:

# 生成掩码:True表示该行需要保留,False表示要删除
mask = labels2 != -1

这个掩码的结果是array([ True, False, True, True, False]),刚好对应你要保留的第0、2、3行。

最后用这个掩码去索引X_train,直接得到修剪后的数组:

X_train_trimmed = X_train[mask]

# 打印结果看看
print(X_train_trimmed)

输出完全符合你的期望:

[[ 1  2  3]
 [ 7  8  9]
 [10 11 12]]

这种方法的好处是简洁高效,完全利用Numpy的向量化操作,比手动循环遍历快得多,处理大规模数据集的时候优势特别明显。

内容的提问来源于stack exchange,提问作者Redman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:02:22