将具有空白列表(值)的Dict转换为df

时间:2019-03-04 01:34:59

标签: python pandas list dataframe dictionary

我是大熊猫的新手,并且一直在努力使用pd.DataFrame(Dict)将Dict转换为df。这里有更多详细信息:该Dict是for循环的一部分,该循环在每次迭代中都读取一个新的输入文件。结果,Dict值(列表)每次都会更新并采用不同的列表大小。问题是,一旦Dict包含所有键的空白列表(值)并吐出,我的代码将无法执行pd.DataFrame(Dict),并且吐出:“ ValueError:如果使用所有标量值,则必须传递索引”

Dict = {'Title': [],
'Organization': [],
'City': [],
'Company': []}

有人能对此有所启发吗?预先感谢一百万。

1 个答案:

答案 0 :(得分:0)

通过pd.DataFrame(Dict)命令运行字典示例不会给我任何错误,我只是得到一个空的DataFrame。这就是应该的样子,因为值不是标量,所以您拥有的这些空列表是可迭代的。当所有值实际上都是标量(例如整数/浮点数/字符串)时,将显示ValueError。如果仅将这些标量转换为可迭代值,例如空列表或每个包含一个元素的列表(例如['New York']),就不会出现任何错误。

根据此SO thread,有许多建议的方法可以在您实际具有标量时处理此错误,例如根据错误消息的要求,将索引实际作为列表传递给pd.DataFrame()。您只需要使该索引列表的大小与您要馈送到DataFrame的元素数相同即可。