我有这样一个数据帧:
df = pd.DataFrame()
text secFlag
0 book 1
1 headings 1
2 chapter 1
3 one 1
4 page 0
5 one 0
6 text 0
7 chapter 1
8 two 1
9 page 0
10 two 0
11 text 0
12 page 0
13 three 0
10 text 0
11 chapter 1
12 three 1
13 something 0
我想找到累计和,这样我就可以通过一个运行的索引号来标记属于特定章节的所有页面
**Desired output**
text secFlag chapter
0 book 1 1
1 headings 1 1
2 chapter 1 2
3 one 1 2
4 page 0 2
5 one 0 2
6 text 0 2
7 chapter 1 3
8 two 1 3
9 page 0 3
10 two 0 3
11 text 0 3
12 page 0 3
13 three 0 3
10 text 0 3
11 chapter 1 4
12 three 1 4
13 something 0 4
这就是我所尝试的:
df['chapter'] = ((df['secFlag'].shift(-1) == 1)).cumsum()
但是,这并没有给出所需的输出,因为一旦节标志中的值为1,它就会递增。注意,多个单词是文本的一部分,章节标题通常有多个单词
你能建议一个简单的方法来完成这件事吗? 谢谢
如果需要由
secFlag
中的第一个1
标记,则解决方案是:详细信息:
相关问题 更多 >
编程相关推荐