【问题标题】:"No columns to parse from file" when reading in dictionary在字典中阅读时“没有要从文件中解析的列”
【发布时间】:2020-02-01 12:54:53
【问题描述】:

我正在尝试在 python 中获取一个字典对象,将其写入 csv 文件,然后从该 csv 文件中读回。

但它不起作用。当我尝试重新读取它时,它给了我以下错误:

EmptyDataError: No columns to parse from file

我不明白这有两个原因。首先,如果我使用 pandas 自己的 to_csv 方法,它应该 给我正确的 csv 格式。其次,当我打印出我试图保存的数据帧的标题值(通过这样做: print(df.columns.values) )时,它说我确实有标题(“一个”和“两个” .) 所以如果我发送的对象有列名,我不知道为什么当我试图读回来时找不到它们。

import pandas as pd
testing = {"one":1,"two":2 }
df = pd.DataFrame(testing, index=[0])

file = open('testing.csv','w')

df.to_csv(file)

new_df = pd.read_csv("testing.csv")

我做错了什么?

提前感谢您的帮助!

【问题讨论】:

    标签: python pandas csv dictionary


    【解决方案1】:

    默认pandas.DataFrame.to_csv 采用路径而不是text io。去掉文件声明直接使用路径,通过index = False跳过索引即可。

    import pandas as pd
    testing = {"one":1,"two":2 }
    df = pd.DataFrame(testing, index=[0])
    
    df.to_csv('testing.csv', index = False)
    
    new_df = pd.read_csv("testing.csv")
    

    【讨论】:

      猜你喜欢
      • 2020-03-27
      • 1970-01-01
      • 2022-07-13
      • 2021-01-28
      • 1970-01-01
      • 2022-01-02
      • 1970-01-01
      • 1970-01-01
      • 2011-06-21
      相关资源
      最近更新 更多