我有一个具有以下结构的熊猫数据框:
author Year co_author
A 1990 B
A 1990 C
A 1991 B
A 1994 D
A 1995 D
B 1990 A
B 1991 C
B 1991 E
B 1998 C
我想在三年的时间内列出每位作者曾经合作过的合著者。因此,对于以上结果,结果应如下所示:
author 3-Year-window co_authors_list
A 1990-1992 [B,C]
A 1991-1993 [B,C]
A 1992-1994 [D]
A 1994-1996 [D]
A 1995-1997 [D]
B 1990-1992 [A,C,E]
B 1991-1993 [C,E]
B 1998-2000 [C]
我知道如何用一年的窗口将其分组,而不是三年。这是一年窗口的代码:
df.groupby(['author','Year'])['co_author'].apply(list)
答案 0 :(得分:2)
我正在使用numpy
的{{1}}面板,然后重新创建数据框
groupby