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)