【问题标题】:Manually generating Pandas DataFrame from nested dictionary structure从嵌套字典结构手动生成 Pandas DataFrame
【发布时间】:2017-06-13 16:29:51
【问题描述】:

我正在尝试从嵌套数据结构(分类)创建字典,如下所示:

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

或者也许有更好的方法来考虑使用 Pandas 构建这些层次结构?只要层次结构得到适当维护并且我可以轻松导航该层次结构,我不反对输出结构与我上面指出的不同,谢谢!

【问题讨论】:

    标签: python pandas dictionary dataframe


    【解决方案1】:

    让我们使用applypd.Seriesstack

    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
    

    【讨论】:

    • 很好的答案!谢谢。
    猜你喜欢
    • 2019-07-26
    • 2012-11-14
    • 2022-01-01
    • 2022-01-02
    • 1970-01-01
    • 2020-02-18
    • 2017-12-26
    • 2019-12-01
    • 1970-01-01
    相关资源
    最近更新 更多