Product component lead time
mobile batteries 2days
mobile charger 4 days
charger cable 2 days
charger adapter 2 days
我想创建一个开始日期和截止日期,例如适配器开始日期应该从今天开始,截止日期=开始日期+提前期。对于产品移动和组件充电器的开始日期等于充电器电缆的到期日 我如何在 python 中实现这个逻辑
答案 0 :(得分:0)
该方法是使用 pandas
和 datetime
模块并从提前期列中增加天数。但是要将天数用作数字,必须从字符串中提取它(通过删除“天”,删除所有空格并将结果转换为整数)。以下是代码中的实现!
import pandas as pd
import datetime
d = {
"Product":['mobile', 'mobile', 'charger', 'charger'],
"component":['batteries', 'charger', 'cable', 'adapter'],
"lead time":['2days', '4 days', '2 days', '2 days']
}
df = pd.DataFrame(data=d)
df['start date'] = datetime.datetime.now().date()
df['due date'] = ''
for i in range(0,len(df)):
n = int(((df['lead time'][i]).replace("days","")).strip())
df['due date'][i] = datetime.datetime.now().date()+datetime.timedelta(days=n)
结果数据帧将是 -
Product component lead time start date due date
0 mobile batteries 2days 2021-03-12 2021-03-14
1 mobile charger 4 days 2021-03-12 2021-03-16
2 charger cable 2 days 2021-03-12 2021-03-14
3 charger adapter 2 days 2021-03-12 2021-03-14