3
我試圖在Python中運行pandas
的Winsorized迴歸。該very helpful user manual提供此示例代碼:在Pandas for Python中爲Winsorize數據
winz = rets.copy()
std_1year = rolling_std(rets, 250, min_periods=20)
cap_level = 3 * np.sign(winz) * std_1year
winz[np.abs(winz) > 3 * std_1year] = cap_level
winz_model = ols(y=winz['AAPL'], x=winz.ix[:, ['GOOG']],window=250)
第四行看起來我錯了:不應該RHS是cap_level[np.abs(winz) > 3 * std_1year]
?
感謝您的幫助!我還是使用熊貓數據框的新手,並且想確保我的理解是正確的。
感謝。我擔心的是,在原始代碼中,cap_level的前N個值將被採用並使用,其中N是布爾掩碼中的True值的數量。但是我們需要cap_level的相應值,而不僅僅是前N個值。原始代碼不會給出相應的值,是嗎? –
@DavidM更正了我的答案,請再看一下。 – ecatmur
非常感謝,也感謝這個例子。 –