将字典追加到数据框

时间:2018-08-09 19:52:09

标签: python python-3.x pandas dataframe

我有一个函数,该函数返回像这样的字典:

{'truth': 185.179993, 'day1': 197.22307753038834, 'day2': 197.26118010160317, 'day3': 197.19846975345905, 'day4': 197.1490578795196, 'day5': 197.37179265011116}

我正在尝试将此字典附加到数据框,如下所示:

output = pd.DataFrame()
output.append(dictionary, ignore_index=True)
print(output.head())

不幸的是,数据框的打印导致数据框为空。有什么想法吗?

2 个答案:

答案 0 :(得分:7)

您没有将值分配给结果。

output = pd.DataFrame()
output = output.append(dictionary, ignore_index=True)
print(output.head())

答案 1 :(得分:1)

我不确定您想要什么。

但是,如果您想像构造器将读取输入字典一样阅读此dict,请这样做

pd.DataFrame([d])

相同
df.append([d]) # same as df.append(d, ignore_index=True)

所有这些输出

    day1        day2        day3        day4        day5        truth
0   197.223078  197.26118   197.19847   197.149058  197.371793  185.179993

请注意,df.append返回一个新的数据帧(与list.append相对,这会更改列表的位置并返回None),因此您必须将其分配回{{1} }。

如果您希望该单元格包含此词典,只需执行

df

将会输出

df = pd.DataFrame()
df['n'] = [d]