将带有列表的字典添加到Pandas DataFrame(pd.DataFrame(dict)vs df.append(dict))

时间:2018-01-15 14:09:24

标签: python pandas dictionary

我在将包含列表的字典添加到pandas数据框中时遇到问题。我的数据如下:

a = {'id':[0,1,2,3,4,5,6],
 'value':[354,324,211,78,644,198,342]}

当您将字典添加到pandas数据帧时,它会将每个列表的元素添加到数据框中的一行,如下所示:

test1 = pd.DataFrame(a)

但是,当我尝试附加一个字典(在这种情况下是相同的字典)时,每列都包含一个列表。

test1 = test1.append(a, ignore_index = True)

我试图找出原因。有什么帮助吗?

感谢。

1 个答案:

答案 0 :(得分:2)

您可以再次使用pd.DataFrame

test1.append(pd.DataFrame(a), ignore_index=True)

输出:

    id  value
0    0    354
1    1    324
2    2    211
3    3     78
4    4    644
5    5    198
6    6    342
7    0    354
8    1    324
9    2    211
10   3     78
11   4    644
12   5    198
13   6    342

或使用pd.concat

pd.concat([test1,pd.DataFrame(a)])