【问题标题】:Simplest way to add repeating counter column to pandas dataframe将重复计数器列添加到熊猫数据框的最简单方法
【发布时间】:2021-09-15 14:29:27
【问题描述】:

我有一个数据名:

import pandas as pd

df = pd.DataFrame(
 {
 "key": ["K0", "K1", "K2", "K3", "K4", "K5", "K6", "K7", "K8", "K9",'K10', 'K11',],
 "team": ['a', 'd', 'w', 'a', 'c', 's', 'x', 'd', 'a', 'f', 'e', 'r'],
 }
)

df = 
    key team
0   K0  a
1   K1  d
2   K2  w
3   K3  a
4   K4  c
5   K5  s
6   K6  x
7   K7  d
8   K8  a
9   K9  f
10  K10 e
11  K11 r

像这样添加重复计数器列的shortes / simples方法是什么?:

    key team    counter
0    K0  a      0
1    K1  d      0
2    K2  w      0
3    K3  a      1
4    K4  c      1
5    K5  s      1
6    K6  x      2
7    K7  d      2
8    K8  a      2
9    K9  f      3
10   K10 e      3
11   K11 r      3

我的感觉告诉我,必须有一个单行解决方案(可能更长一点)。但我能想到的会更长更复杂。

你会如何处理这个问题?

【问题讨论】:

    标签: python pandas dataframe indexing counting


    【解决方案1】:

    尝试:

    df['counter']=df.index//3
    

    如果您有自定义索引,则可以使用:

    df['counter']=[x//3 for x in range(len(df))]
    

    df的输出:

        key     team    counter
    0   K0      a       0
    1   K1      d       0
    2   K2      w       0
    3   K3      a       1
    4   K4      c       1
    5   K5      s       1
    6   K6      x       2
    7   K7      d       2
    8   K8      a       2
    9   K9      f       3
    10  K10     e       3
    11  K11     r       3
    

    【讨论】:

      猜你喜欢
      • 2017-08-21
      • 2018-10-14
      • 1970-01-01
      • 1970-01-01
      • 2018-12-14
      • 2023-02-03
      • 2021-01-05
      • 2012-09-04
      相关资源
      最近更新 更多