【问题标题】:Too many values to unpack when creating a data frame from two lists从两个列表创建数据框时解压缩的值太多
【发布时间】:2014-04-07 00:53:33
【问题描述】:

我有列表 cp 并且都有 35300 个元素。我尝试创建一个 pandas 数据框,但运行代码时出现错误消息。我该如何解决这个问题?

import pandas as pd

e=pd.DataFrame.from_items(['Company',c],['ID',p])
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-284-89427a7d8af3> in <module>()
      1 import pandas as pd
      2 
----> 3 e=pd.DataFrame.from_items(['Company',c],['ID',p])

C:\Users\toshiba\Anaconda\lib\site-packages\pandas\core\frame.pyc in from_items(cls, items, columns, orient)
   1195         frame : DataFrame
   1196         """
-> 1197         keys, values = zip(*items)
   1198 
   1199         if orient == 'columns':

ValueError: too many values to unpack

【问题讨论】:

  • 试试.from_items([['Company',c],['ID',p]])

标签: python python-2.7 pandas dataframe


【解决方案1】:

由于cp 是列表,听起来您想定义一个包含两列CompanyID 的DataFrame:

e = pd.DataFrame({'Company':c, 'ID':p})

正如 behzad.nouri 建议的那样,

e = pd.DataFrame.from_items([('Company',c), ('ID',p)])

也会起作用,而且与我的第一个建议不同,它会修复列的顺序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-27
    • 2020-12-12
    • 1970-01-01
    • 2019-05-13
    • 2020-07-27
    • 2020-06-17
    • 1970-01-01
    • 2020-03-12
    相关资源
    最近更新 更多