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

如何删除Hugging Face数据集answer列含None或空字符串的行?

清理Hugging Face数据集中answer列空值行的方法

在加载好训练子集dataset_split后,直接使用Hugging Face Dataset自带的filter方法就能快速删除answer列是None或空字符串的行,具体实现有两种方式:

方式一:自定义过滤函数

适合逻辑复杂的场景,可读性更强:

# 定义过滤规则:保留answer不为None且非空(含去除全空格情况)的行
def keep_valid_answers(example):
    ans = example['answer']
    return ans is not None and ans.strip() != ""

# 应用过滤得到清理后的数据集
clean_train_dataset = dataset_split.filter(keep_valid_answers)

方式二:Lambda表达式

适合简单逻辑,代码更简洁:

# 一行完成过滤
clean_train_dataset = dataset_split.filter(lambda x: x['answer'] is not None and x['answer'].strip() != "")

可选验证步骤

可以对比过滤前后的数据集行数,确认清理效果:

print(f"原训练集行数:{len(dataset_split)}")
print(f"清理后训练集行数:{len(clean_train_dataset)}")

注:如果不需要处理全空格的空值,把strip()去掉即可,只判断x['answer'] != ""。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 06:02:36