pandas/numpy:我有一个数组,里面有一个字典。如何从中创建 DataFrame? [复制]

Posted

技术标签:

【中文标题】pandas/numpy:我有一个数组,里面有一个字典。如何从中创建 DataFrame? [复制]【英文标题】:pandas/numpy: I have an array with a dictionary inside. How do I create a DataFrame from this? [duplicate] 【发布时间】:2018-06-10 09:09:39 【问题描述】:

我的代码:

import pandas as pd
import numpy as np

d = 'one':[1,1,1,1,1],'two':[2,2,2,2,2],'letter':['a','a','b','b','c']
e = np.array(d)

df = pd.DataFrame(e)

抛出此错误:

ValueError: Must pass 2-d input

【问题讨论】:

将其作为列表传递,即df = pd.DataFrame(e.tolist()) 您阅读过文档吗? pandas.pydata.org/pandas-docs/stable/generated/… - 你有什么具体的问题关于那个 doco 与你正在做的事情的关系吗? ***.com/questions/18837262/… 【参考方案1】:

您不需要e=np.array(d)。数据框构造函数中的data 参数接受格式正确的字典。

随便用

df = pd.Dataframe(d)

输出:

  letter  one  two
0      a    1    2
1      a    1    2
2      b    1    2
3      b    1    2
4      c    1    2

【讨论】:

但是如果我想用一个数组来做,我该怎么做呢?

以上是关于pandas/numpy:我有一个数组,里面有一个字典。如何从中创建 DataFrame? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

pandas/numpy - 基于时间的平均值

以大约相等的计算成本将不等大小的 pandas/numpy 数组分箱

如何确定 Pandas/NumPy 中的列/变量是不是为数字?

初步理解Numpy, Scipy, matplotib, pandas,

如何在 pandas/numpy 中将值扩展到下一个非空值? [复制]

Python Pandas:“numpy.ndarray”对象没有属性“apply”