我正在尝试使用 pandas 库在 python 中创建一个数据框。但是低于错误[重复]

Posted

技术标签:

【中文标题】我正在尝试使用 pandas 库在 python 中创建一个数据框。但是低于错误[重复]【英文标题】:I am trying to create a dataframe in python with pandas library. But getting below error [duplicate] 【发布时间】:2021-07-15 07:32:01 【问题描述】:
import pandas as pd
data='X':45, 'Y':12,'Z':85
df=pd.DataFrame(data)
print(df)

TypeError: 'dict' 对象不可调用

【问题讨论】:

所以如果'dict' object is not callable没有问题,那么请检查下面的任何答案。 【参考方案1】:
import pandas as pd
data=['X':45, 'Y':12,'Z':85]
df=pd.DataFrame(data)
print(df)

【讨论】:

在 Jupyter Notebook 中仍然出现同样的错误。 @vishal0116 即使在 spyder 或 Jupyter Notebook 上我也没有收到任何错误 内核重启后它现在可以工作了。我认为内核有问题。【参考方案2】:

你传递的是标量值,你必须传递一个索引。因此,您不能对列使用标量值。试试这个:

import pandas as pd
data='X':[45], 'Y':[12],'Z':[85]
df=pd.DataFrame(data)
print(df)

或像这样传递标量值的索引:

import pandas as pd
data='X':45, 'Y':12, 'Z':85
df=pd.DataFrame(data, index=[0])
print(df)

【讨论】:

【参考方案3】:

有许多创建方法,其参数值略有不同,因此这取决于您期望的格式。简单的解决方案:

df = pd.Series(data).to_frame()

数据帧格式:

    0
X  45
Y  12
Z  85

df.T:

    X   Y   Z
0  45  12  85

【讨论】:

【参考方案4】:

要从 narray/list 的 dict 创建 DataFrame,所有 narray 必须具有相同的长度。如果传递了索引,则长度索引应等于数组的长度。如果没有传递索引,则默认情况下,索引将是 range(n),其中 n 是数组长度。你应该这样做-

import pandas as pd
data='X':[45], 'Y':[12],'Z':[85]
df=pd.DataFrame(data)
print(df)

【讨论】:

以上是关于我正在尝试使用 pandas 库在 python 中创建一个数据框。但是低于错误[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用python pypsexec.client库在Windows远程计算机上传递命令的动态输入

Python:Pandas:加速应用函数

mode(x).mode [0]是什么意思?

使用 python 将 pandas 数据框导入 MS Access 表

TorCtl 和 Socksipy 库在 python 中引发异常

由于额外的列值,尝试使用 pandas Python 读取 csv 时出错