一、畫出模型的殘差值分布情況
#!/usr/bin/python
import
pandas as pd
import
numpy as np
import
csv as csv
import
matplotlib
import
matplotlib.pyplot as plt
from sklearn.linear_model import
ridge, ridgecv, elasticnet, lassocv, lassolarscv
from sklearn.model_selection import
cross_val_score
train = pd.read_csv('
train.csv
', header=0) #
load the train file into a dataframe
df = pd.get_dummies(train.iloc[:,1:-1])
df =df.fillna(df.mean())
x_train =df
y =train.price
defrmse_cv(model):
rmse= np.sqrt(-cross_val_score(model, x_train, y, scoring="
neg_mean_squared_error
", cv = 3))
return
(rmse)
#呼叫lassocv函式,並進行交叉驗證,預設cv=3
model_lasso = lassocv(alphas = [0.1,1,0.001, 0.0005]).fit(x_train, y)
matplotlib.rcparams[
'figure.figsize
'] = (6.0, 6.0)
#將模型**的值與真實值作為兩列放在dataframe裡面
preds = pd.dataframe()
#真實值與**值之間的差值作為乙個新列
preds["
residuals
"] = preds["
true
"] - preds["
preds"]
(preds)
#**值作為x軸,殘差值作為y軸,畫出圖形
注:本樣例只是為了說明問題,只用了幾行資料來**畫圖。
正常來講,乙個好的模型,殘差值應該分布比較集中,而且基本都在0上下稍微浮動,表明殘差值都比較小。
Scikit學習 使用Python進行機器學習
在此文中,我們將討論python中的scikit learn。在談論scikit learn之前,必須先了解機器學習的概念,並且必須知道如何將python用於資料科學。借助機器學習,您無需手動收集見解。您只需要乙個演算法,機器就會為您完成剩下的工作!這不令人興奮嗎?scikit學習是我們可以使用py...
python標準庫學習之zipfile模組
zipfile模組裡有兩個非常重要的class,分別是zipfile和zipinfo。zipfile是主要的類,用來建立和讀取zip檔案,而zipinfo是儲存的zip檔案的每個檔案的資訊的。class zipfile.zipfile file mode compression allowzip64...
《Python之機器學習(NumPy)》
單行注釋 多行注釋 多行注釋 多行注釋 a.ndim 輸出陣列的維數 a.shape 輸出陣列的形式 幾行,幾列 copy 複製陣列 a 2 陣列中每個元素乘以2 1,2 2 陣列將變成4個 a 2 a的平方 1,2 2 unsuported operand type 陣列訪問。修建異常值。處理不存...