如何解析表头含单空格、列间多空格的netstat CSV数据?
解决netstat生成CSV的表头拆分错位问题
直接用正则表达式指定分隔符即可,无需手动添加表头,完美适配大文件场景:
- 用
sep=r'\s{2,}'替代delim_whitespace=True,这个正则规则会仅将两个及以上的空格识别为列分隔符,表头里的单个空格(比如Local Address)就不会被错误拆分 - 配合
header=0让pandas自动读取第一行作为表头,完整代码示例:
import pandas as pd # 读取文件,仅以2个及以上空格为分隔符 df = pd.read_csv('netstat_data.csv', sep=r'\s{2,}', header=0, engine='python')
补充说明:
- 加上
engine='python'是为了确保正则分隔符正常生效(C引擎对复杂正则的支持有限) - 该方法无需修改原文件,直接解析就能保留带单个空格的表头,彻底避免大文件手动加表头的高额开销
内容的提问来源于stack exchange,提问作者Zarif Rahman
相关产品推荐
相关产品推荐

