【发布时间】:2025-12-18 06:40:01
【问题描述】:
我的数据框是这样的;
df = pd.DataFrame({'Col1':[0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0]
,'Col2':[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]})
如果 col1 在第 2 列中包含值 1,我想向前填充 1 n 次。例如,如果 n = 4,那么我需要这样的结果。
df = pd.DataFrame({'Col1':[0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0]
,'Col2':[0,1,1,1,1,0,0,0,1,1,1,1,0,0,0,0,0,1,1,1,1]})
我想我可以使用带有计数器的 for 循环来做到这一点,每次条件发生时都会重置,但有没有更快的方法来产生相同的结果?
谢谢!
【问题讨论】:
标签: python pandas numpy conditional-statements fill