首页 > 解决方案 > 使用 pandas/Numpy 在日期上创建资源钟分布

问题描述

我正在尝试实现一个特定的资源曲线,计算仅查看工作日(周一至周五)的两个指定日期的预算工作时间分布。这已在 Primavera P6 中完成,但正在寻找 python 解决方案。

绘制多个资源的示例:Multiple Resource Graph

这些曲线基于:资源曲线

import pandas as pd

df = pd.DataFrame({'Activity ID':['XXXX-XXXX','XXXX-XXXX','XXXX-XXXX','XXXX-XXXX','XXXX-XXXX'], 
            'Resource':['Mechanical', 'Electrical ', 'Pipelines ', 'Process ', 'Project Management'], 
            'Start':['2019-01-16'   , '2019-01-17', '2019-01-18', '2019-01-21', '2019-02-17'],
            'Finish':['2019-10-02', '2019-09-05', '2019-10-02', '2019-07-18', '2019-07-26'],
            'Current Date':['2019-05-05', '2019-05-05', '2019-05-05', '2019-05-05', '2019-05-05'],                   
            'Budgeted Labor Units':[20, 300, 400, 200, 150],
            'Remaining Labor Units:':[10, 100, 200, 50, 30]})


print(df)


Activity ID            Resource       Start      Finish Current Date  \
0   XXXX-XXXX          Mechanical  2019-01-16  2019-10-02   2019-05-05   
1   XXXX-XXXX         Electrical   2019-01-17  2019-09-05   2019-05-05   
2   XXXX-XXXX          Pipelines   2019-01-18  2019-10-02   2019-05-05   
3   XXXX-XXXX            Process   2019-01-21  2019-07-18   2019-05-05   
4   XXXX-XXXX  Project Management  2019-02-17  2019-07-26   2019-05-05   

   Budgeted Labor Units  Remaining Labor Units:  
0                    20                      10  
1                   300                     100  
2                   400                     200  
3                   200                      50  
4                   150                      30

目标是输入开始日期和结束日期,计算两者之间的工作日,然后根据资源曲线在这些天分配预算的工作时间。 资源曲线

这将针对所有资源完成,然后通过 matplotlib 绘制图表,显示项目资源需求。

下一步是设置当前日期并使用剩余的劳动力单位重新计算剩余的分配日期。 进步资源

我对python相当陌生,所以任何帮助和建议将不胜感激。

谢谢

标签: pythonpandasnumpydatetimematplotlib

解决方案


推荐阅读