为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 python 检索 pandas group-by 的最后一列行值?

如何使用 python 检索 pandas group-by 的最后一列行值?

慕田峪9158850 2023-08-22 14:59:01
我有数据集 df. 我想将每个名字的最后一个阶段作为一个新列。Name     Stage     stage_numbera        Open          1a        Paid          2a        Transit       3a        Wait          4a        Complete      5b        Open          1b        Paid          2b        Transit       3b        Wait          4b        Canceled      5预期输出:Name     Stage     stage_number   Last_Stagea        Open          1           Completea        Paid          2           Completea        Transit       3           Completea        Wait          4           Completea        Complete      5           Completeb        Open          1           Cancelledb        Paid          2           Cancelledb        Transit       3           Cancelledb        Wait          4           Cancelledb        Canceled      5           Cancelled我尝试了下面的代码但出现错误,def stage(df):    for x in df['Name']:        return df['Stage'].iloc[-1]df['last_stage'] = df.apply(stage, axis = 1)df我的错误AttributeError: 'str' object has no attribute 'iloc'
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

这对你有用吗?


df["last_stage"] = df.groupby("Name")["Stage"].transform("last")


print(df)

  Name     Stage  stage_number last_stage

0    a      Open             1   Complete

1    a      Paid             2   Complete

2    a   Transit             3   Complete

3    a      Wait             4   Complete

4    a  Complete             5   Complete

5    b      Open             1   Canceled

6    b      Paid             2   Canceled

7    b   Transit             3   Canceled

8    b      Wait             4   Canceled

9    b  Canceled             5   Canceled


查看完整回答
反对 回复 2023-08-22
?
冉冉说

TA贡献1877条经验 获得超1个赞

如果你真的想按照你的功能,你可以这样做:


def stage(df):

    for name, group in df.groupby('Name'):

            for i in range(0, len(group)):

                 return group['Stage'].iloc[-1]


df['last_stage'] = df.apply(stage, axis = 1)


查看完整回答
反对 回复 2023-08-22
  • 2 回答
  • 0 关注
  • 1543 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信