啊啊啊啊啊吖

2019-03-14   阅读量: 771

数据分析师 Python数据分析

Pandas数据帧,在NAN上重置cumsum

扫码加入数据分析学习群

我知道这个问题存在,但我找不到任何简单到足以理解并适合我的问题的答案。我在数据框中有一个列,我希望保留此列的运行总计(cumsum),但重置NAN值

Index s_number s_cumsum

0 1 1

1 4 5

2 6 11

3 Nan 0

4 7 7

5 2 9

6 3 12

解决办法:使用groupby和cumsum:

df['s_cumsum'] = df.s_number.groupby(df.s_number.isna().cumsum()).cumsum()

df

Index s_number s_cumsum

0 0 1.0 1.0

1 1 4.0 5.0

2 2 6.0 11.0

3 3 NaN NaN

4 4 7.0 7.0

5 5 2.0 9.0

6 6 3.0 12.0

请注意,如果“s_number”是一列字符串,请使用

df['s_number'] = pd.to_numeric(df['s_number'], errors='coerce)

添加CDA认证专家【维克多阿涛】,微信号:【cdashijiazhuang】,提供数据分析指导及CDA考试秘籍。已助千人通过CDA数字化人才认证。欢迎交流,共同成长!
11.0571 1 3 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子