如何在 Pandas 中根据上一行的值条件增加新列并累加满足条件的值?

如何在 pandas 中根据上一行的值条件增加新列并累加满足条件的值?

根据上一行的值条件增加新列

在 pandas 中,可以通过 df.apply() 函数结合条件判断和赋值操作,根据上一行的值条件向 dataframe 中增加新列。

例如,给定一个 dataframe:

values = [[5.5, 2.5, 10.0], [2.0, 4.5, 1.0], [2.5, 5.2, 8.0], [4.5, 5.8, 4.8], [4.6, 6.3, 9.6], [4.1, 6.4, 9.0], [5.1, 2.3, 11.1]]df = pd.dataframe(values, columns=['col1', 'col2', 'col3'],index=['a', 'b', 'c', 'd', 'e', 'f', 'g'])

登录后复制

要根据 col1 列的值条件向 dataframe 中增加新列 col4,满足条件 3

df['col4'] = df.apply(lambda x: 1 if 3 < x['col1'] < 5 else 0, axis=1)

登录后复制

结果为:

col1  col2  col3  col4a   5.5   2.5  10.0    0b   2.0   4.5   1.0    0c   2.5   5.2   8.0    0d   4.5   5.8   4.8    1e   4.6   6.3   9.6    1f   4.1   6.4   9.0    1g   5.1   2.3  11.1    0

登录后复制

进一步,如果需要将满足条件 3

df['col4'] = df['col4'].cumsum()

登录后复制

结果为:

col1  col2  col3  col4a   5.5   2.5  10.0    0b   2.0   4.5   1.0    0c   2.5   5.2   8.0    0d   4.5   5.8   4.8    1e   4.6   6.3   9.6    2f   4.1   6.4   9.0    3g   5.1   2.3  11.1    3

登录后复制

以上就是如何在 Pandas 中根据上一行的值条件增加新列并累加满足条件的值?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2181872.html

(0)
上一篇 2025年2月25日 15:05:49
下一篇 2025年2月25日 15:06:05

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论