我正在尝试将功能应用于groupby组。无法使其工作。 这是我的数据:
ID DATE ABROAD
1 2019-1-2 1
2 2019-1-2 0
1 2019-1-4 1
1 2019-1-7 1
2 2019-1-7 1
1 2019-1-8 0
1 2019-1-19 1
2 2019-1-11 1
我想要的是
ID #ofTravels
1 2
2 1
我想找到一个人旅行了多少次。这是我的功能
def no_travels(x):
x.sort_values('DATE', ascending=True, inplace=True)
current_state = x.iloc[0].ABROAD
num_travels = 0
for state in x['ABROAD']:
if state != current_state:
num_travels+=1
current_state = state
return num_travels
据我所知,x是一个分组的组。我在这里做什么错了?
谢谢
答案 0 :(得分:0)
即groupby
与diff
,如果ID
的{{1}}等于diff
,则每个ID
都不同。属于一个肚,它将返回0
,如果不返回False
,那么我们只需要True
来查找有多少sum
True