尝试使用轮班数据计算每小时的人工成本

时间:2019-07-13 18:57:39

标签: pandas time-series calculation

尝试将每小时的人工成本计算为字典的格式,其中:

{
   %H:%C
}

其中H是一天中的时间,C是人工成本。

我不得不解析数据,因此创建了一个时间序列。然后,我将时间序列转换为十进制格式,以便进行时间转换。然后,我创建了一个知道工人何时工作的范围。现在,我实质上是在尝试创建一个与工作时间相匹配的字典。

设法将以下内容转换为此数据框,使其格式更简洁

   break_notes  end_time  pay_rate start_time start_break end_break
0        15-18  23:00:00      10.0   10:00:00    15:00:00  18:00:00
1  18.30-19.00  23:00:00      12.0   18:00:00    18:30:00  19:00:00
2      4PM-5PM  22:30:00      14.0   12:00:00    16:00:00  17:00:00
3          3-4  18:00:00      10.0   09:00:00    15:00:00  16:00:00
4     4-4.10PM  23:00:00      20.0   09:00:00    16:00:00  16:10:00
5      15 - 17  23:00:00      10.0   11:00:00    15:00:00  17:00:00
6      11 - 13  16:00:00      10.0   10:00:00    11:00:00  13:00:00

然后我将时间转换为小数。

endTime = [23.0, 23.0, 22.5, 18.0, 23.0, 23.0, 16.0]
startTime = [10.0, 18.0, 12.0, 9.0, 9.0, 11.0, 10.0]
endBreak = [18.0, 19.0, 17.0, 16.0, 16.166666666666668, 17.0, 13.0]
startBreak = [15.0, 18.5, 16.0, 15.0, 16.0, 15.0, 11.0]
payRate = [10, 12, 14, 10, 20, 10, 10]

df = pd.DataFrame(list(zip(endTime, startTime, endBreak, startBreak, payRate)), 
               columns =['end_time', 'start_time', 'end_break', 'start_break', 'payRate']) 

提供以下内容

   end_time  start_time  end_break  start_break  payRate
0      23.0        10.0  18.000000         15.0       10
1      23.0        18.0  19.000000         18.5       12
2      22.5        12.0  17.000000         16.0       14
3      18.0         9.0  16.000000         15.0       10
4      23.0         9.0  16.166667         16.0       20
5      23.0        11.0  17.000000         15.0       10
6      16.0        10.0  13.000000         11.0       10

如何计算每小时的人工成本?我尝试创建一个带时间的范围,然后引用小时数,然后尝试对员工进行求和。

时移模式从start_time to start_break开始,然后从end_break to end_shift开始。

0 个答案:

没有答案