我有以下几点:
df1['Effective_Date']
df1['Amount']
Date_Range = pd.date_range('12/31/2017', periods=150, freq='M')
我正在尝试返回 df2(rows = 'Amount', columns = Date_Range) 其中:
if df1['Effective_Date'] > Date_Range, return 0
例如,金额 = 100 美元,生效日期 = 3/1/18,那么它将在 2/28/18 和之前返回 0 美元,在 3/31/18、4/30/18、5/31/18 等返回 100 美元。
我打算用 df1['Amount'] 填充一个数据框,然后尝试在生效日期之前收回金额:
创建数据框:
df2 = pd.DataFrame(df1['Amount'], columns = Date_Range)
要使 > 生效日期 = 0:
df2[df1['Effective_Date'].astype(int) > df2] = 0
我收到以下错误:
传递值的形状是 (1, 1217),索引表示 (150, 1217)
不能从 [datetime64[ns]] 到 [int32] 输入类似日期时间
我显然是个业余爱好者。非常感谢你的帮助。
相关分类