import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from sklearn.model_selection import train_test_split #模型評估 留出法(最基礎的3、7分類的評估形式,這裡匯入的是模型評估模組)
from sklearn.linear_model import linearregression#線性回歸
from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score
#度量導包(訓練完之後一定要用的度量工具) mse mae r2(mse是均方值誤差,mae是絕對值誤差,還有r2的0到1區間誤差)
path = r』路徑』
data = pd.read_csv(path) # 4列資料
x = data[[『tv』, 『radio』, 『news*****』]]#將電視廣告,廣播廣告,報紙廣告作為特徵
y = data[『sales』]#銷售額作為標籤
print(x)
print(y)
發掘各種廣告投入對銷售額的影響哪個是最大的
plt.plot(data[『tv』], y, 『ro』, label=『tv』)
plt.plot(data[『radio』], y, 『g*』, label=『radio』)
plt.plot(data[『news*****』], y, 『bv』, label=『newspaer』)
plt.legend(loc=『lower right』)
plt.grid()
plt.show()
最後得出電視投放廣告的話對銷售額的影響最大
#留出法,進行分割,預設比例7.5:2.5
x_train, x_test, y_train, y_test = train_test_split(x, y, random_state=1)# 隨機種子
先進行資料集的分隔,然後再擬合線性回歸的資料模型
linreg = linearregression()
model = linreg.fit(x_train, y_train)#擬合資料
print(linreg.coef_)#引數
print(linreg.intercept_)#截距
最後從得到的數值裡可以發現廣播的coef權重值最大,表明了廣播對真實情況下資料的影響最大
y_hat = linreg.predict(np.array(x_test))#模型**(predict是訓練後返回**結果,是標籤值y)
print(mean_squared_error(y_test, y_hat))#均方誤差(均方誤差越大越不准)
print(mean_absolute_error(y_test, y_hat))#均絕對值誤差,度量模型優劣
print(r2_score(y_test, y_hat))#r方
最終得到的資料,就連檢測係數r方都是很接近1,這裡的檢測係數還可以調整得更接近1
t = np.arange(len(x_test))(這裡的len是把x_test中所有元素的個數按索引值來逐一的分出來,比如有3個元素,就是0,1,2。這裡用來繪圖作橫座標)
plt.plot(t, y_test, 『r-』, linewidth=2, label=『test』)
plt.plot(t, y_hat, 『g-』, linewidth=2, label=『predict』)
plt.legend(loc=『upper right』)
plt.grid()
plt.show()
總結:這裡先是用了留出法進行評估來擬合資料得到模型,然後再通過度量方式對模型進行可靠檢測,最後再通過繪圖來觀察**出來的和真實的測試資料集的銷售額的走向,影象基本相似。
CUDA(4)之指標的認識
摘要 本文的主要目的是認識指標。1.指標的含義 指標是一種資料型別!指標和其他資料型別 double,float,int.一樣需要占用記憶體空間 通常情況下,double占用8個位元組,float占用4個位元組,int占用4個位元組,指標占用2個位元組。指標和其他資料型別一樣同樣有值,唯一不同的是指...
對Android4 X視窗的認識
視窗,可以理解為乙個可以提供給使用者互動的使用者介面,在這個介面裡,使用者可以通過物理按鍵事件,觸控事件等輸入事件和應用程式或者系統進行互動。總體來說,視窗就是乙個可互動的 viewgroup,android 系統在某一時刻只會有且只有乙個視窗獲得焦點並且處於活躍狀態,可以接收各種事件。視窗引數包括...
Spring的認識,以及快速入門案例 4
1.例項化 當我們的程式載入beans.xml檔案 把我們的bean 前提是scope singlton 例項化到記憶體中 2.呼叫set方法設定屬性 3.如果你事先了bean名字關注介面 beannameaware 則,可以通過setbeanname獲取id號 4.如果你實現了beanfactor...