0
我有數據幀在大熊貓數據幀合併行
Date CUSIP Asset Liability
01-01-1990 A 1 NaN
01-01-1990 A Nan 2
02-01-1990 A 3 2
01-01-1990 B Nan 2
01-01-1990 B 1 2
反正它成爲這個這樣的結合:
Date CUSIP Asset Liability
01-01-1990 A 1 2
02-01-1990 A 3 2
01-01-1990 B 1 2
我想出的辦法是使用GROUPBY([ 「CUSIP」,日期])。AGG(功能)
其中I應用函數,其中最大(楠,3)= 3。
我有更簡單的方法嗎?
是的!用nan方法實現max的問題在於,這是非常慢的。一個需要遍歷列表並丟棄nan值。我有時會討厭python對待nan的方式... – Lost1
爲了確保數據中沒有錯誤,您還可以確保在給定日期只有一個CUSIP。假設上面的結果叫做'result',那麼result.groupby(['Date','CUSIP'])['CUSIP']。count()。max()'應該返回1. – Alexander
感謝提示。我正在運行這個。這非常緩慢。是向前填充還是向後填充總是這樣慢? – Lost1