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

构建大型Pandas DataFrame时列名与索引缺失问题排查

问题:合并多CSV文件时列名异常(特殊字符/隐藏换行符列)

我需要合并多个仅列名顺序不同的CSV文件来构建大型DataFrame,流程是循环读取文件转为DataFrame,完成基础清洗后合并,再用to_csv保存。但调用df.info()时发现45列中有2列缺失列名与索引:

  • 含特殊字符的co2-ausstoß列
  • 带有隐藏换行符的additional\r列(同时存在正常的additional列)

此外,这两个additional相关列的空值并非完全互补,无法直接合并。

现有实现代码

autohero_data_list = []

for entry in files:
    df = pd.read_csv(entry, lineterminator='\n', sep=";", header=0)
    df = df[df.listing_price.notnull()]
    df = df[df.highlights.notnull()]
    df.columns = df.columns.str.lower().str.replace(' ','_')

    df = df.reset_index(drop=True)
    autohero_data_list.append(df)

df_clean_autohero = pd.concat(autohero_data_list)

path = "./data/data_cleaned"

df_clean_autohero.to_csv(os.path.join(path,r"autohero_data_clean"), encoding='utf-8', index=False)

df_clean_autohero.info()

尝试的解决方法

最初判断是编码与引号问题,尝试Gremlin扩展无效;之后通过强制将列转换为ASCII编码的方式,目前DataFrame显示恢复正常:

for col in df:
    try:
        df[col] = df[col].astype(str)
        if df[col].dtype == str:
            df[col] = df[col].str.decode('ascii')
    except:
        print(traceback.format_exc())
        pass

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 12:52:22