我有一个像这样的python字典:

tag_dict = {'001':['apple', 'orange'], '002':['banana', 'strawberry', 'peach']}


我想将此字典转移到如下所示的DataFrame中:

id  value
001 apple
001 orange
002 banana
002 strawberry
002 peach


有两列:“ id”和“ value”。

我有两行ID为001,但“值”列中的值不同:“苹果”和“橙色”。编号002同样如此。

最佳答案

如果要使用DataFrame.from_dict(),可以使用stack()跟进,然后重置索引:

>>> tag_dict = {'001':['apple','orange'], '002':['banana','strawberry','peach']}
>>> df = pd.DataFrame.from_dict(tag_dict, orient='index').stack()
>>> df.reset_index(level=0)
  level_0           0
0     001       apple
1     001      orange
0     002      banana
1     002  strawberry
2     002       peach


然后,您可以重命名列并为其提供所需的任何索引:

>>> df.columns = ['id', 'value']
>>> df.set_index('id')
          value
id
001       apple
001      orange
002      banana
002  strawberry
002       peach

关于python - 将包含列表作为值的字典转换为DataFrame,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28049127/

10-11 06:22