我有两个数据帧:Springdf
和StaffTraindf2
我在Springdf
行上迭代,以提取字段Allocation
、StaffingStandardsValue
(都是整数)和ArrivalMUkey
(是字符串)
然后我利用ArrivalMUkey
查找StaffTraindf2
,并检索两个变量CurrentAllocation
和StaffingStandardsValue2
(都是整数)
在Springdf.Allocation < StaffingStandards and in StaffTraindf2 while CurrentAllocation < StaffingStandardsValue2
时,将+1添加到Allocation
和CurrentAllocation
。继续这样做,直到其中一个不再为真,然后移到Springdf
的下一行
Allocation
和CurrentAllocation
总是从0开始。StaffingStandardsValue(2)
范围从1到100
我成功地编写了代码,仅在Springdf
内完成了任务,但现在似乎无法正确地重写Traindf2
内的值。当使用字符串StaffingStandardsValue2
作为索引时,我想我在写整数值CurrentAllocation
时遇到了问题(如果这听起来很可笑,请原谅)
下面的代码将运行,但不会更改StaffTrain2
中的值。它们都保持在0
for row in springdf.index:
Aloc = springdf.at[row, 'Allocation']
Train = springdf.at[row, 'StaffingStandardsValue']
ArrivalMUkey = springdf.at[row,'ArrivalMUkey']
TrainMax = StaffTraindf2.loc[StaffTraindf2['ArrivalMUkey'] ==ArrivalMUkey, 'StaffingStandardsValue'].sum()
TrainUtilized = StaffTraindf2.loc[StaffTraindf2['ArrivalMUkey'] ==ArrivalMUkey, 'CurrentAllocation'].sum()
while Aloc < Train & TrainUtilized < TrainMax:
springdf.at[row, 'Allocation'] = Aloc + 1
Aloc = springdf.at[row, 'Allocation']
StaffTraindf2.loc[StaffTraindf2['ArrivalMUkey']==ArrivalMUkey, 'CurrentAllocation'].sum() + 1 = TrainUtilized
TrainUtilized = StaffTraindf2.loc[StaffTraindf2['ArrivalMUkey'] ==ArrivalMUkey, 'CurrentAllocation'].sum()
else:
next
目前没有回答
相关问题 更多 >
编程相关推荐