df=pd.DataFrame({"C1":['USA','USA','USA','USA','USA','JAPAN','JAPAN','JAPAN','USA','USA'],'C2':['A','B','A','A','A','A','A','A','B','A']})
C1 C2
0 USA A
1 USA B
2 USA A
3 USA A
4 USA A
5 JAPAN A
6 JAPAN A
7 JAPAN A
8 USA B
9 USA A
这是我的问题的简化版本,以便让它更简单。我的目标是迭代数据框中C2包含B的子组。如果C2中有一个B,我会查看C1并需要整个组。因此在此示例中,我看到USA并且它从索引0开始并在4处结束。另一个位于8和9之间。
所以我的期望结果是这样的索引:
[[0,4],[8,9]]
我尝试使用groupby,但由于它将所有美国数据分组在一起,所以无法正常工作。
my_index = list(df[df['C2']=='B'].index)
my_index
会给出1和8,但如何获取起点/终点?