我有一个列表,如下所示:
**x**
Chapter 1
some text
Chapter 2
Chapter 3
Chapter 4
Chapter 5"
我寻找的输出是一系列,如下所示:
1
1
2
3
4
5
我写了这段代码
pattern = r"chapter d"
x.map(lambda x: np.cumsum(bool(re.search(pattern,str(x), flags=re.I))))
它给了我输出:
[1]
[0]
[1]
[1]
[1]
[1]
你们能帮我修复这段代码吗?您还可以建议更好的解决方案。谢谢
谢谢大家帮助我修复代码。我确实看到了使用 ffill 的替代解决方案,这很棒。
我在下面使用了 2 衬垫解决方案:
pattern = r"chapter d"
y = x.map(lambda x: bool(re.search(pattern,str(x), flags=re.I)))
z = np.cumsum(y)