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

如何删除标题为空或长度小于5的CSV整列(基于Pandas场景)

解决方法:用Pandas删除CSV中标题为空或长度小于5的列

嘿,我来帮你搞定这个需求!要移除CSV里那些标题为空或者长度不足5的整列,用Pandas几步就能完成,下面是具体操作:

步骤1:读取目标CSV文件

首先把你的CSV文件读进Pandas的DataFrame里:

import pandas as pd

# 读取CSV,编码和你保存时保持一致
df = pd.read_csv('EnterTainment.csv', encoding='utf-8-sig')

步骤2:筛选出符合要求的列

我们需要保留标题不为空且长度≥5的列。这里用strip()处理是为了避免列名前后有空格的情况(比如看起来是空但实际有空格的列名),让判断更严谨:

# 用列表推导式筛选有效列
valid_columns = [col for col in df.columns if col.strip() != '' and len(col.strip()) >= 5]

# 或者更简洁的Pandas风格写法
valid_columns = df.columns[(df.columns.str.strip() != '') & (df.columns.str.len() >= 5)]

步骤3:生成处理后的新DataFrame

只保留筛选出来的有效列:

new_df = df[valid_columns]

步骤4:将结果写回CSV

把处理好的数据覆盖回原文件(如果担心误操作,也可以换个文件名先备份):

new_df.to_csv('EnterTainment.csv', encoding='utf-8-sig', index=False)

完整代码整合

把上面的步骤串起来,直接运行就能完成处理:

import pandas as pd

# 读取文件
df = pd.read_csv('EnterTainment.csv', encoding='utf-8-sig')

# 筛选有效列
valid_columns = [col for col in df.columns if col.strip() != '' and len(col.strip()) >= 5]

# 保留有效列并保存
df[valid_columns].to_csv('EnterTainment.csv', encoding='utf-8-sig', index=False)

小提示

  • 操作前建议先备份原CSV文件,防止意外情况导致数据丢失
  • 如果你的列名里有特殊字符,这个方法也能正常生效,因为我们只针对列名的文本内容做判断

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 03:27:46