【发布时间】:2015-12-14 21:10:13
【问题描述】:
我已经使用这个将一个字典列表变成了一个数据框:
import pandas as pd
d = pd.read_csv('/path/to/file.csv')
res_df = pd.DataFrame(d)
res_df.head()
Pandas 没有成功解释格式,我猜 dict 的键周围没有引号。它看起来像这样:
[{location:'playroom',state:'NY',zip:10011},{..}]
作为一种解决方法,我去掉了“'”、“{}”和“[]”,使文件成为标准 csv。但是,当我从 pd.read_csv 调用 names 参数时,我有两个问题:1 - 名称列是空白的,以及 2 - 我最终得到一个包含数千列的 1 行数据框. res_df.transpose() 不起作用。
如果我的 csv 没有标题行,并且 假设每条记录具有相同数量的字段,为什么我不能给 pandas 我的列名,并创建新的数据框行基于这些参数/指令?
有什么更快/更好的方法来做到这一点?
*更新:这里是 csv 文件的 sn-p:
websitedotcomcom/,Jim,jim@testdotcom,777-444-5555,Long City, NY,1,http://document-url,,another_field,,,true,12 Feb 2015 (18:17),http://website.com/,Jim,jim@test.com,777-444-5555,Long City, NY,1,http://document-url,,another_field,,,true,12 Feb 2015 (18:17)
【问题讨论】:
-
您不需要构建另一个数据框,只需 read_csv 将返回您的数据框
-
当然,但两者之间没有区别。我仍然需要一个多行的输出,并且空白标题行仍然存在问题..那里有什么建议吗?
-
你能举一个文件前五行的例子吗?