因為我們在因子選定的時候,包含了martket_cap市值這一項
但是市值又和其他的有一定的相關性,於是我們進行簡單的市值中性化,
原理:線性回歸 確定bias值的平均值, 這個值就是中性化之後的值,考慮到我們選的變數都明顯和市值相關,都是由市值計算得來
因此我們對所有因子進行市值中性化操作
from sklearn.linear_model import列印後如圖所示y_bias的值,比如說當前的bias是市值和主要利潤的差linearregression
for name in
x.columns:
if name == "
market_cap":
continue
#做市值中性化
y_factor=x[name]
lr=linearregression()
lr.fit(x_market_cap.values.reshape(-1,1),y_factor)
y_predict=lr.predict(x_market_cap.values.reshape(-1,1))
y_bias=y_factor-y_predict
(y_bias)
x[name]=y_bias
當然,在市值中性化之前,我們不應該做任何的標準化,或者去極值的處理
之後,我們再進行去極值和標準化操作:
我們還要看到的是,因為最後乙個月,並沒有與之對應的下乙個月的資料,所以最後乙個月的回歸資料必然是nan,這會造成無法進行線性回歸,我們用前面的資料就克了
from sklearn.linear_model import結果是這樣的:linearregression
#建立回歸方程
lr=linearregression()
x=x.dropna()[:15676]
y=y.dropna()
lr.fit(x,y)
lr.coef_
線性回歸基礎
在這裡,關於數學原理部分全部用 引用 的格式進行說明,如果對數學原理十分熟悉,可以跳過。但對於原理並不熟悉的人,了解清楚原理是十分必要的。單變數線性回歸是一種非常簡單的,根據乙個變數x 定量響應變數y的方法。它假設x和y是線性關係。模型為 y a0 a 1x,其中 a 0,a1 為模型的係數 引數 ...
Pytorch基礎 線性回歸
剛開始入門機器學習,線性回歸是肯定躲不過的。特別到之後的神經網路的全連線層也是需要線性回歸基礎。最簡單的公式就是y w x by wx b y wx b x和y是已知量,要求出w和b的值。我們在平面座標圖上看,y w x by wx b y wx b 就是一條直線。我們要確認這條直線就只要兩個點就可...
線性回歸和邏輯回歸
最近開始學習機器學習,有點心得體會,記錄一下,希望大家批評指正 監督學習 supervised learning 根據已有的資料集,知道輸入和輸出結果之間的關係。根據這種已知的關係,訓練得到乙個最優的模型。也就是說,在監督學習中訓練資料既有特徵 feature 又有標籤 label 通過訓練,讓機器...