Python 按周期标记

Python 按周期标记,python,pandas,dataframe,label,Python,Pandas,Dataframe,Label,我的数据集 name day value A 7 88 A 15 101 A 21 121 A 29 56 B 21 131 B 30 78 B 35 102 C 8 80 C 16 101 ... 我试图用这些天的值进行绘图,但我想标记,因为有太多的唯一天数 我试着给它贴上一致的标签 有没有办法通过每7天(每周)切割一次来加快贴标签的速度 例如,~7天=1周,8~14天=2周,依此类推 输出我想要的内容 name d

我的数据集

name day value
A    7   88
A    15  101
A    21  121
A    29  56
B    21  131
B    30  78
B    35  102
C    8   80
C    16  101
...
我试图用这些天的值进行绘图,但我想标记,因为有太多的唯一天数

我试着给它贴上一致的标签

有没有办法通过每7天(每周)切割一次来加快贴标签的速度

例如,~7天=1周,8~14天=2周,依此类推

输出我想要的内容

name day value week
A    7   88    1
A    15  101   3
A    21  121   3
A    29  56    5
B    21  131   3
B    30  78    5
B    35  102   5
C    8   80    2
C    16  101   3

感谢您阅读减去
1
,然后使用整数除以
7
,最后添加
1

df['week'] = (df['day'] - 1) // 7 + 1
print (df)
  name  day  value  week
0    A    7     88     1
1    A   15    101     3
2    A   21    121     3
3    A   29     56     5
4    B   21    131     3
5    B   30     78     5
6    B   35    102     5
7    C    8     80     2
8    C   16    101     3

你好还有一些天的日期为0。在这种情况下,我想包括1周。如何解决它?@ybin-您可以将
0
值替换为
1
,例如通过
df['week']=((df['day']-1)//7+1)。clip(lower=1)
-表示最低值为
1
df['week']=((df['day']-1)//7+1)。替换(0,1)