日期采用日期时间格式 周末的天数必须相同,其余的按数字顺序向下移动。 df1
Date Number
0. 12-10-2018 1
1. 13-10-2018 2
2. 14-10-2018 3
3. 15-10-2018 4
4. 16-10-2018 5
5. 17-10-2018 6
6. 18-10-2018 7
7. 18-10-2018 8
8. 19-10-2018 9
我的代码:
i = 1
df1['Number'][0] == 1
for i range(len(df1[0])):
if df1[0[i].weekday()== 4:
df1['Number'].iloc[i+1] = df1['Number'].iloc[i]
elif df1[0][i].weekday() == 5:
df1['Number'].iloc[i+1] = df1['Number'].iloc[i]
这给了我输出我的电话号码的信息:
df1
Date Number
0. 12-10-2018 1
1. 13-10-2018 1
2. 14-10-2018 1
3. 15-10-2018 4
4. 16-10-2018 5
5. 17-10-2018 6
6. 18-10-2018 7
7. 19-10-2018 8
8. 20-10-2018 8
我需要输出为:
df1
Date Number
0. 12-10-2018 1
1. 13-10-2018 1
2. 14-10-2018 1
3. 15-10-2018 2
4. 16-10-2018 3
5. 17-10-2018 4
6. 18-10-2018 5
7. 19-10-2018 6
8. 20-10-2018 6
非常感谢
答案 0 :(得分:1)
我们可以通过factorize
df.Number=df.Number.factorize()[0]+1
df
Date Number
0.0 12-10-2018 1
1.0 13-10-2018 1
2.0 14-10-2018 1
3.0 15-10-2018 2
4.0 16-10-2018 3
5.0 17-10-2018 4
6.0 18-10-2018 5
7.0 19-10-2018 6
8.0 20-10-2018 6