熊猫:如何创建一个简单的计数器,每n行增加一个?

时间:2018-11-29 13:46:03

标签: python pandas

有没有办法创建一个计数器,每n行增加一个计数器?

示例===>计数器每增加4行:

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

我正在尝试df['counter'] = np.arange(len(df)//4),但是出现了索引错误的长度

谢谢

1 个答案:

答案 0 :(得分:2)

您很亲密,需要:

df['counter'] = np.arange(len(df)) // 4 + 1
print (df)
   counter
0        1
1        1
2        1
3        1
4        2
5        2
6        2
7        2
8        3
9        3

您的解决方案无效,因为具有2个值的数组已分配给列:

print (len(df)//4)
2

print (np.arange(len(df)//4))
[0 1]

但是如果需要像DataFrame一样大小的数组:

print (np.arange(len(df)))
[0 1 2 3 4 5 6 7 8 9]