ValueError:传递了 2 列,传递的数据有 1 列

新手上路,请多包涵

我有一个这样的组织名称列表:

 name = ['ALPHABET INC', 'AMAZON COM INC', 'APPLE INC',....]

和另一个像这样的 cu 值列表:

 cu = ['02079K305', '023135106', '037833100',....]

当我试图将它转换为数据框时,它给我错误消息,“ValueError:2 列已传递,传递的数据有 1 列”

我将列表转换为数据框的代码:

 df = pd.DataFrame([name, cu], columns=['name of issuer', 'cusip'])

我哪里错了?提前致谢!

原文由 Ishan Pradhan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 380
2 个回答

我认为最简单的是创建字典:

 df = pd.DataFrame({'name of issuer': name, 'cusip':cu})

您的解决方案可以使用 zip ,在最后一个版本的熊猫中应该省略 list

 df = pd.DataFrame(list(zip(name, cu)), columns=['name of issuer', 'cusip'])

 print (df)
   name of issuer      cusip
0    ALPHABET INC  02079K305
1  AMAZON COM INC  023135106
2       APPLE INC  037833100

原文由 jezrael 发布,翻译遵循 CC BY-SA 4.0 许可协议

使用 zip

 pd.DataFrame(zip(name, cu), columns=['name of issuer', 'cusip'])

前任:

 >>> df = pd.DataFrame(zip(name, cu), columns=['name of issuer', 'cusip'])
>>> df
   name of issuer      cusip
0    ALPHABET INC  02079K305
1  AMAZON COM INC  023135106
2       APPLE INC  037833100

原文由 Dishin H Goyani 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题