-1
我有貸款數據與借款人身份證,銀行身份證,到期日和貸款支付日期。我想查明,對於任何借款人而言,她之前的貸款是否尚未到期,目前的貸款是否已發放(多筆借款)。如果是這樣,我想創建一個包含銀行標識的列,以前的未到期貸款已經從中取出。如果基於前一行的條件產生「一個Series的真值不明確,請使用a.empty,a.bool(),a.item(),a.any()或a.all()。」
我的數據看起來像
df = pd.DataFrame({'month':[3,6,7,12,2,5,8,1],
'borrower':[1,1,1,1,2,2,3,4],
'bank':[1,1,2,3,3,3,4,5],
'maturity':[9,18,19,24,14,17,14,13]})
我想補充這一個列:
df = pd.DataFrame({'month':[3,6,7,12,2,5,8,1],
'borrower':[1,1,1,1,2,2,3,4],
'bank':[1,1,2,3,3,3,4,5],
'maturity':[9,18,19,24,14,17,14,13],
'currently_borrowing':[np.nan,1,1,2,np.nan,3,np.nan,np.nan]})
我曾嘗試下面的代碼:
df = df.sort_values(['borrower','month'])
if ((df['bank'] == df['bank'].shift()) & (df['maturity'] >= df['maturity'].shift()) &(df['maturity'].shift() > df['month'])) :
df['currently_borrowing'] = df['bank'].shift()
else :
df['currently_borrowing'] = np.nan
,但我得到的以下錯誤消息:「一個Series的真值不明確,使用a.empty,a.bool(),a.item(),a.any()或a.all()。」 我曾嘗試添加.any()和.all(),但新列只包含NAN。
任何幫助非常感謝!