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

基于Numpy实现筛选标签为1且第一特征非负样本的函数

Numpy样本筛选函数实现

要实现满足需求的函数,我们可以利用Numpy的布尔索引特性高效筛选样本,具体代码如下:

import numpy as np

def preprocessing_matrix(samples, labels):
    # 将输入转换为Numpy数组,兼容列表类输入
    samples = np.asarray(samples)
    labels = np.asarray(labels)
    
    # 生成标签为1的掩码
    label_condition = labels == 1
    # 生成第一特征(第0列)非负的掩码
    feature_condition = samples[:, 0] >= 0
    
    # 合并两个条件,仅保留同时满足的样本
    valid_samples = samples[label_condition & feature_condition]
    
    return valid_samples

代码说明

  • 输入兼容:用np.asarray转换输入,确保无论传入列表还是Numpy数组都能正常处理
  • 条件掩码:分别生成两个条件的布尔数组,再通过&(逻辑与)合并,得到同时满足两个条件的样本索引
  • 高效筛选:直接用布尔掩码索引样本矩阵,这是Numpy中最高效的筛选方式之一

测试验证

# 构造测试数据
test_samples = [[-1, 3], [2, 5], [4, 1], [-3, 2]]
test_labels = [1, 1, 0, 1]

# 调用函数
filtered = preprocessing_matrix(test_samples, test_labels)
print(filtered)
# 输出结果:[[2 5]]

内容的提问来源于stack exchange,提问作者Sie. Theos

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 19:36:20