我有以下数据
要插入的列为LAST_6M_TTL_FMLA_Q和LAST_6M_SAME_TRN_W_FMLA_Q。 带有粗体的行是带有值的行。
Last_6M_TTL_FMLA_Q必须按以下方式填写: 对于相同的crew_employee,缺少的行(TASK = ACTUAL)应该具有先前的值(TASK = Dummy)。
LAST_6M_SAME_TRN_W_FMLA_Q必须按以下方式填写: 对于相同的crew_employee和train id,缺失的行(TASK = ACTUAL)应该具有先前的值(TASK = Dummy)。
我尝试了以下代码
emp_train_grp_id = df_merged.groupby(["CREW_EMPLOYEE_I", "TRAIN_I"])
for crew_emp_train_id in emp_train_grp_id.groups.keys():
df_sorted_emp = df_merged[(df_merged["CREW_EMPLOYEE_I"] == crew_emp_train_id[0]) &
(df_merged["TRAIN_I"] == crew_emp_train_id[1])].sort_values(by=['ON_DUTY_TS'])
df_interpolated = df_sorted_emp['LAST_6M_SAME_TRN_W_FMLA_Q']
df_interpolated = df_interpolated.interpolate(method='ffill', limit_direction='forward', axis=1)
df_sorted_emp['LAST_6M_SAME_TRN_W_FMLA_Q'] = df_interpolated['LAST_6M_SAME_TRN_W_FMLA_Q']
df_merged_interpolated = pd.concat([df_merged_interpolated, df_sorted_emp])
但是它抛出了错误
您能告诉我如何解决吗?有没有简单的方法可以做到这一点?
非常感谢您的帮助。
ValueError:对象类型