【问题标题】:pandas: How to add an index-like column based upon column groupings?pandas:如何根据列分组添加类似索引的列?
【发布时间】:2018-05-22 23:56:12
【问题描述】:

我正在尝试将 col3 添加到现有的 pandas 数据框 (col1, col2),其中 col3 就像 col1 中每个组的索引(从 1 开始)。

        col1    col2    col3  
0       AAAA    fooW       1
1       AAAA    fooX       2
2       AAAA    fooY       3
3       AAAA    fooZ       4
4       BBBB    fooW       1
5       BBBB    fooX       2
6       CCCC    barV       1
7       CCCC    barW       2
8       CCCC    barX       3
9       CCCC    barY       4
10      CCCC    barZ       5

【问题讨论】:

  • groupby + cumcount

标签: pandas


【解决方案1】:

您首先要对“col1”进行分组,然后应用一些函数来获取组内行的索引。 cumcount 可以胜任这项工作。

df['col3'] = df.groupby('col1').cumcount()

【讨论】:

  • 正是我想要的。只需添加 df['col3'] = df.col3 + 1 即可获得从 1 开始的计数。
猜你喜欢
  • 2017-11-25
  • 2018-12-06
  • 2016-12-04
  • 1970-01-01
  • 2016-05-03
  • 2017-01-09
  • 1970-01-01
  • 1970-01-01
  • 2020-03-12
相关资源
最近更新 更多