如何利用上行条件动态添加新列并累加满足条件的行数?

ID:21007 / 打印

如何利用上行条件动态添加新列并累加满足条件的行数?

如何利用上行条件增加新列

pandas 中可以通过条件判断,根据上一行的值动态添加新列。以下步骤介绍如何实现:

  1. 首先,使用 lambda 函数应用条件。例如,要添加一列,其中当上行的值大于 3 小于 5 时为 1,否则为 0,可以使用以下代码:
df['new_col'] = df.apply(lambda x: 1 if x['prev_col'] > 3 and x['prev_col'] < 5 else 0, axis=1)

这里,prev_col 是上一个值与之进行比较的列名。

  1. 其次,通过 cumsum() 累加该列的值。这可以用于计算连续满足条件的行数:
df['new_col_cumsum'] = df['new_col'].cumsum()
  1. 最后,可以使用填充来重置累加后的值,以确保仅累加连续满足条件的行。例如,可以使用以下代码将非连续行的累加值重置为 0:
df['new_col_cumsum'] = df['new_col_cumsum'].fillna(0)

通过遵循这些步骤,您可以有效地根据上行条件填充新列,并累加连续满足条件的行数。

上一篇: Python 字典如何生成无限级树结构?
下一篇: 使用 Minio SDK 操作阿里云 OSS 可行吗?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。