2017-06-13 82 views
0

产生大熊猫据帧我试图创建一个嵌套的数据结构(分类)的字典如下:手动从嵌套的字典结构

pd.DataFrame({'genus': ['Unknown', 'External Metal'], 
       'species':['Other Feature/Anomaly', 
         ['Close External Metal', 'Touching Metal Object']]}) 

我得到以下的输出:

  genus          species 
0   Unknown       Other Feature/Anomaly 
1 External Metal [Close External Metal, Touching Metal Object] 

这是我想要的东西:

  genus          species 
0   Unknown       Other Feature/Anomaly 
1 External Metal       Close External Metal 
2 External Metal       Touching Metal Object 

也许有考虑结构的THES更好的办法用熊猫来分类?我不反对让输出的结构与上面指出的不同,只要层次结构得到适当维护,并且我可以轻松导航该层次结构谢谢!

回答

1

让我们用applypd.Series,并stack

df.set_index('genus').species.apply(pd.Series).stack().reset_index(name='Species').drop('level_1', axis=1) 

输出:

  genus    Species 
0   Unknown Other Feature/Anomaly 
1 External Metal Close External Metal 
2 External Metal Touching Metal Object 
+0

伟大的答案!谢谢。 – tubuliferous