当前位置: 首页 > 知识库问答 >
问题:

将词典转换为数据帧熊猫时出错

王英奕
2023-03-14

我有一本这样的字典:

{'6DEC19': 0.61, '13DEC19': 0.58, '27DEC19': 0.63, '31JAN20': 0.66, '27MAR20': 0.69, '26JUN20': 0.71}

我只是想把它转换成一个数据帧,其中的列是6DEC1913DEC19等等,然后将索引设置为当前日期和小时,我将使用该代码作为pd。时间戳。现在()。地板('60分钟')

生成的df如下所示:

                    6DEC19  13DEC19  27DEC19  31JAN20  27MAR20  26JUN20
2019-12-04 20:00:00 0.61    0.58     0.63     0.66     0.69     0.71

我的第一步是将dict转换为数据帧,就我而言,这段代码应该可以做到这一点:

df = pd.DataFrame.from_dict(dict)

但是我得到这个错误消息:ValueError:如果使用所有标量值,则必须传递索引

我真的不知道这里有什么问题?任何建议都是很好的,如果有人能够解决将指数调整为bargin的问题,那就更好了。干杯

共有3个答案

杜禄
2023-03-14

试试这个

newDF = pd.DataFrame(yourDictionary.items())
欧阳衡
2023-03-14

试试这个:

import pandas as pd

a = {'6DEC19': [0.61], '13DEC19': [0.58], '27DEC19': [0.6], '31JAN20': [0.66], '27MAR20': [0.69], '26JUN20': [0.71]}

df = pd.DataFrame.from_dict(a)

print(df)
杭英杰
2023-03-14

正如错误消息所说,您需要指定索引,因此可以执行以下操作:

import pandas as pd

d = {'6DEC19': 0.61, '13DEC19': 0.58, '27DEC19': 0.63, '31JAN20': 0.66, '27MAR20': 0.69, '26JUN20': 0.71}
df = pd.DataFrame(d, index=[pd.Timestamp.now().floor('60min')])

print(df)

输出

                     6DEC19  13DEC19  27DEC19  31JAN20  27MAR20  26JUN20
2019-12-04 17:00:00    0.61     0.58     0.63     0.66     0.69     0.71
 类似资料:
  • 我有一个这样的字典列表: 我想把它变成一个熊猫,如下所示: 注意:列的顺序并不重要。 如何将字典列表转换为如上所示的数据帧?

  • 我想读取ArcGIS形状文件的文件,并将其转储到数据帧中。我目前正在使用dbf包。 显然,我已经能够将文件作为一个表加载,但还不能理解如何解析它并将其转换为一个数据帧。怎么做? 这就是我所处的困境: Python将此语句作为输出返回,坦率地说,我不知道该如何处理: 编辑 我的原始示例:

  • 我对熊猫有些陌生。我有一个熊猫数据框,是一行23列。 我想把它转换成一个系列?我想知道做这件事最像蟒蛇的方式是什么? 我试过pd。系列(我的结果),但它抱怨。它还没有聪明到意识到它仍然是数学术语中的“向量”。 谢谢!

  • 我有一个由180M行和4列(所有整数)组成的熊猫数据帧。我把它保存为泡菜文件,文件是5.8GB。我正在尝试使用将熊猫数据帧转换为 pyspark 数据帧,但不断收到“内存不足”错误。 错误代码段为 我有超过200GB的内存,我不认为缺少物理内存是个问题。我了解到有多种内存限制,例如驱动内存-这可能是原因吗? 我该如何解决这个问题?

  • 我有一本字典的形式: 例如, 我想转换成熊猫数据帧与列1的用户名和其他列的电影评级,即: 但是,一些用户没有对电影进行评分,因此这些电影不包括在该用户键()的值()中。在这种情况下,只需用NaN填充条目就好了。 现在,我迭代键,填充列表,然后使用此列表创建数据帧: 但这只给了我一个用户的数据框,这些用户对片场中的所有电影都进行了评分。 我的目标是通过迭代电影标签(而不是上面显示的暴力方法)来追加到

  • 我使用熊猫数据框来清理和处理数据。但是,我需要将其转换为numpy ndarray,以便使用利用矩阵乘法。我将数据框转换为具有以下内容的列表列表: 这将返回以下结构: 然后我将其转换为如下所示的numpy数组: 然而,以下打印: 给出这个结果: 但是,我需要它们都是numpy数组。如果它不是来自熊猫数据帧,我只是转换一个硬编码列表,那么它们都是Ndarray。当列表是从数据帧生成的时,如何获取该列