我是一个新手python程序员,我手头有一个任务,需要一点逻辑设计。因此,我有一个数据框架,其中包含用户为该任务投入的用户,任务和小时数中的以下值:
| 使用者|任务|小时|
| - -----|- -----|- -----|
| 约翰|T1|八|
| 约翰|T2|三十二|
| 亚历克斯|A1|四十|
| 鲍勃|B1|十六|
现在我需要做的是,每周生成一个新的dataframe,其中包含用户,任务代码和分成5个小时的时间(每周7天中的5个工作日)。请注意,每周最多工作时间不能超过40小时,即每天8小时。
- 对于Alex**:这个划分很简单。每天工作8小时,连续工作5天,我就有40小时的工作时间。
| 使用者|任务|小时|日|
| - -----|- -----|- -----|- -----|
| 亚历克斯|A1|八|1|
| 亚历克斯|A1|八|2|
| 亚历克斯|A1|八|3|
| 亚历克斯|A1|八|4|
| 亚历克斯|A1|八|5个|
现在事情变得棘手了。
- 对于Bob**:除法为16/5 = 3.2。但我需要输入整数(4),并调整最后一天的剩余。
| 使用者|任务|小时|日|
| - -----|- -----|- -----|- -----|
| 鲍勃|B1| 3| 1|
| 鲍勃|B1| 3| 2|
| 鲍勃|B1| 3| 3|
| 鲍勃|B1| 3| 4|
| 鲍勃|B1| 4| 5个|
- 约翰**:
这是最棘手的。我需要在5天内分配2个任务的小时数(32和8)。
我需要8个人分成2 - 2-2-2四天或者4 - 4两天
32分为6 - 6 - 6 - 6 - 8,5天或4 - 4 - 8 - 8 - 8,5天
考虑两种情况的第一种情况,我们会得到这样的结果:
| 使用者|任务|小时|日|
| - -----|- -----|- -----|- -----|
| 约翰|T1| 2| 1|
| 约翰|T2|六|1|
| 约翰|T1| 2| 2|
| 约翰|T2|六|2|
| 约翰|T1| 2| 3|
| 约翰|T2|六|3|
| 约翰|T1| 2| 4|
| 约翰|T2|六|4|
| 约翰|T2|八|5个|
如果我的格式或语言不合适或不遵守准则,我很抱歉。我很抱歉
如果你能帮我找出其中的逻辑,我将不胜感激。先谢谢你。
1条答案
按热度按时间oxf4rvwz1#
第一,
import numpy as np
我们的数据框:
保留我们需要的列并打印Dataframe:
| 使用者|任务|小时数|天数|
| - -----|- -----|- -----|- -----|
| 约翰|T1| 1.0| 1|
| 约翰|T1| 1.0| 2|
| 约翰|T1| 1.0| 3|
| 约翰|T1| 1.0| 4|
| 约翰|T1| 4.0| 5个|
| 约翰|T2| 6.0| 1|
| 约翰|T2| 6.0| 2|
| 约翰|T2| 6.0| 3|
| 约翰|T2| 6.0| 4|
| 约翰|T2| 8.0| 5个|
| 亚历克斯|A1| 8.0| 1|
| 亚历克斯|A1| 8.0| 2|
| 亚历克斯|A1| 8.0| 3|
| 亚历克斯|A1| 8.0| 4|
| 亚历克斯|A1| 8.0| 5个|
| 鲍勃|B1| 3.0| 1|
| 鲍勃|B1| 3.0| 2|
| 鲍勃|B1| 3.0| 3|
| 鲍勃|B1| 3.0| 4|
| 鲍勃|B1| 4.0| 5个|