gpt4 book ai didi

python - 添加最近 10 个日期的指示器

转载 作者:太空宇宙 更新时间:2023-11-03 15:59:40 24 4
gpt4 key购买 nike

我正在使用Python,并且我有包含球队名称和已玩比赛日期的数据,它看起来像这样(除了有几百行):

      team    date
0 TOR 2016/10/15
1 LAK 2016/10/20
2 CGY 2016/11/03
3 BUF 2016/10/30
4 PIT 2016/10/27
5 CHI 2016/11/05
6 VAN 2016/10/20
7 BUF 2016/10/16
8 STL 2016/10/13
9 BUF 2016/10/29
10 MIN 2016/10/29
11 PIT 2016/11/05
12 CHI 2016/10/18
13 BOS 2016/10/29
14 PIT 2016/10/20
15 COL 2016/10/20
16 MTL 2016/10/20
17 MTL 2016/11/05
18 BOS 2016/11/03
19 EDM 2016/11/05
20 NSH 2016/11/01

我想添加指标列来显示每个球队最近 10 场比赛,以及每个球队最近 5 场比赛。如果他们属于该组,则为 1;如果不属于该组,则为 0。

我被难住了。任何想法将不胜感激!

最佳答案

我认为你可以使用SeriesGroupBy.nsmallestnumpy.where用于通过 isin 选择索引:

df.date = pd.to_datetime(df.date)
#in real data use nsmallest(10)
idx = df.groupby('team')['date'].nsmallest(2).index.get_level_values(1)
df['indicator'] = np.where(df.index.isin(idx), 1, 0)

print (df)
team date indicator
0 TOR 2016-10-15 1
1 LAK 2016-10-20 1
2 CGY 2016-11-03 1
3 BUF 2016-10-30 0
4 PIT 2016-10-27 1
5 CHI 2016-11-05 1
6 VAN 2016-10-20 1
7 BUF 2016-10-16 1
8 STL 2016-10-13 1
9 BUF 2016-10-29 1
10 MIN 2016-10-29 1
11 PIT 2016-11-05 0
12 CHI 2016-10-18 1
13 BOS 2016-10-29 1
14 PIT 2016-10-20 1
15 COL 2016-10-20 1
16 MTL 2016-10-20 1
17 MTL 2016-11-05 1
18 BOS 2016-11-03 1
19 EDM 2016-11-05 1
20 NSH 2016-11-01 1

关于python - 添加最近 10 个日期的指示器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40455033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com