我有以下数据框.
df = pd.DataFrame( { "drive": [1,1,2,3,4,5,6,7,7],"team": ['home','home','away','home'],"home_comfy_lead": [0,1],"home_drives": [1,4],'home_drives_with_comfy_lead': [0,3] })
@H_404_8@我正在尝试制作两列:
> home_drives列,该列唯一地计算来自
车队依据车队的“主场”称号
柱.
>一个home_drives_with_comfy_lead列,该列唯一地计算
home_drives根据home_comfy_lead是否为true来驱动值.我想要的输出是:
drive team home_comfy_lead home_drives home_drives_with_comfy_lead0 1 home 0 1 01 1 home 0 1 02 2 away 0 0 03 2 away 0 0 04 2 away 0 0 05 3 home 0 2 06 3 home 0 2 07 3 home 1 2 18 4 away 0 0 09 4 away 0 0 010 4 away 0 0 011 5 home 1 3 212 5 home 1 3 213 6 away 0 0 014 6 away 0 0 015 7 home 1 4 316 7 home 1 4 3
@H_404_8@有人能帮忙吗?我已经为此苦苦挣扎了几天.最佳答案使用.where屏蔽,然后使用groupby ngroup.在这里,我们很幸运为NaN组分配了-1,并且您还想从1开始计数,因此同时添加了两个固定值.
df['home_drives'] = df.where(df.team == 'home').groupby('drive').ngroup()+1df['hDWcl'] = df.where(df.home_comfy_lead == 1).groupby('home_drives').ngroup()+1
@H_404_8@输出:
drive team home_comfy_lead home_drives hDWcl0 1 home 0 1 01 1 home 0 1 02 2 away 0 0 03 2 away 0 0 04 2 away 0 0 05 3 home 0 2 06 3 home 0 2 07 3 home 1 2 18 4 away 0 0 09 4 away 0 0 010 4 away 0 0 011 5 home 1 3 212 5 home 1 3 213 6 away 0 0 014 6 away 0 0 015 7 home 1 4 316 7 home 1 4 3
@H_404_8@ 总结以上是内存溢出为你收集整理的累积条件计数 全部内容,希望文章能够帮你解决累积条件计数 所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)