将最终行值应用于pandas数据帧中的每个组

时间:2017-08-28 19:01:50

标签: python pandas dataframe group-by

我正在尝试定位组中最后一行的列值,并将其应用于该组的新列

data_frame['New_Col'] = data_frame.groupby(['Group'])\
                        .apply(lambda x: x['Existing_Col'].iloc[-1])

但是这会为NaN返回data_frame['New_Col']

1 个答案:

答案 0 :(得分:1)

您可以使用dfGroupBy.transform

data_frame['New_Col'] = data_frame.groupby(['Group'])['Existing_Col']\
                                  .transform('last')

lastby Wen)指定您只从该组中获取最后一个值。