在 Pandas 中,如何按组中下一次出现的迭代项的顺序创建列

压迫者

在 Pandas 中,如何按组中下一次出现的迭代项的顺序创建列

我有这个数据:

import io
df = pd.read_csv(io.StringIO("""Name,Team\nWill,DEN\nMark,SEA\nBob,MIA\nWill,DEN\nWill,DEN\nMark,SEA\nWill,DEN\nWill,DEN\nBob,MIA\nMark,SEA\n"""))
df

   Name Team
0  Will  DEN
1  Mark  SEA
2   Bob  MIA
3  Will  DEN
4  Will  DEN
5  Mark  SEA
6  Will  DEN
7  Will  DEN
8   Bob  MIA
9  Mark  SEA

我正在尝试获取每个名称或团队出现的顺序,如下所示:

   Name Team  Sequence
0  Will  DEN         1
1  Mark  SEA         1
2   Bob  MIA         1
3  Will  DEN         2
4  Will  DEN         3
5  Mark  SEA         2
6  Will  DEN         4
7  Will  DEN         5
8   Bob  MIA         2
9  Mark  SEA         3

我尝试了 cummin,但这只是为每个名称提供了每个名称的唯一索引(这对其他事情很有用,但不是这个任务):

df.reset_index().groupby('Name')['index'].cummin()

0    0
1    1
2    2
3    0
4    0
5    1
6    0
7    0
8    2
9    1

所以我被卡住了,我在问是否有人有办法完成这项任务。

贝尼

我们有 cumcount

df.groupby(list(df),sort=False).cumcount()+1
0    1
1    1
2    1
3    2
4    3
5    2
6    4
7    5
8    2
9    3
dtype: int64

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何创建一个列来标识行数,直到下一次在另一个列中出现pandas值为止?

只有當它們在下一次迭代中通過 Pandas 重複時,我才能刪除重複項

Pandas DataFrame Resample to OHLC:如何将上次关闭值设置为下一次打开?

在vim中下一次出现{char}之后

如何使用传统python或pandas / numpy / sciy在列表中按顺序选择重复项的首次出现

在python中访问循环中下一次迭代的索引时索引超出范围

如何跳过下一次迭代?

熊猫数据框按列值的下一次出现进行分组

在列中的一行上打印字典对和下一次迭代的对

Pandas - 如何识别列中两个值以特定顺序出现的数据组?

如何在经过过滤的范围列中查找下一次出现的非NA值?

在一次更新中在pandas数据框中创建多个列

如何在 Visual Studio for Mac 中“添加下一次出现”?

如何在 R 中的 data.frame 中找到下一次出现?

Pandas 在多列中的一行中查找特定值的第一次出现并返回列索引

僅當我按下 Julia 中的某個鍵時,如何繼續進行下一次循環迭代

如何在 Rust for 循环的当前迭代中获取下一次迭代的值?

如何一次性通过DF中的Pandas行进行多列转换

压缩两个迭代时如何获得下一次迭代

如何将值存储到此dict中,以便在下一次迭代中起作用?

Pandas Dataframe 一次迭代两行

在JS / JQUery中执行下一次循环迭代之前,如何使代码等待x秒?

如何在模拟VBA中Python的“ continue”语句的错误AKA上进行下一次迭代?

如何使用模型的预训练权重在下一次迭代中初始化权重?

对于下一次迭代之前的循环延迟

如何基于一组行在Pandas DataFrame中创建新列

调用`async for in`后如何获取异步生成器的下一次迭代

在进行下一次迭代之前,如何使我的for循环完全执行任务?

在while循环中单击按钮时,如何进行下一次迭代?