首页 > 解决方案 > Python Pandas:按基于列的数据框分组?

问题描述

我正在尝试按基于列的数据框进行分组。

        name         month1      month2         month3       .....    month n
    0     john         50         NaN             NaN        .....      .
    1     john         NaN         25             NaN        .....      .
    2     john         NaN        NaN             10         .....      .
    3     mark         NaN         0              NaN        .....      .
    4     mark         15         NaN             NaN        .....      .
    5     paul         NaN        NaN             100        .....      .

最终输出

        name         month1      month2         month3     ....
    0     john         50           25             10      ....
    1     mark         15           0              NaN     ....
    2     paul         NaN          NaN            100     ....

标签: pythonpython-3.xpandasdataframe

解决方案


按列对数据框进行分组,name然后调用first,最后重置索引:

>>> df.groupby('name').first().reset_index()

   name  month1  month2  month3
0  john    50.0    25.0    10.0
1  mark    15.0     0.0     NaN
2  paul     NaN     NaN   100.0

推荐阅读