我想使用lambda和map在我的數據框中創建一個新列。基本上,如果滿足條件,並且列B不符合標準,則新列將取A列。請參閱下面的代碼。使用Lambda和條件連接
df['LS'] = df.['Long'].map(lambda y:df.Currency if y>0 else df.StartDate)
然而,當我做到這一點的函數返回到每個項目的整列在我的新列。
英語我正在閱讀Long列中的每個項目y。如果該項目> 0,則在「貨幣」列中取第y個值。否則,請在「開始」列中輸入第y個值。
迭代運行速度極慢。還有其他選擇嗎?
謝謝! 詹姆斯
'DF [...]'是一個語法錯誤。你確定這正是你正在運行的代碼嗎? – mkrieger1
IIUC你想要'df ['LS'] = df ['Currency']。其中(df ['Long']> 0,df ['StartDate'])' – EdChum