簡體   English   中英

sklearn 線性回歸系數具有單值輸出

[英]sklearn Linear Regression coefficients have single value output

我正在使用數據集來查看薪水和大學 GPA 之間的關系。 我正在使用 sklearn 線性回歸模型。 我認為系數應該是截距和 coff。 對應特征的值。 但該模型給出了一個單一的值。

from sklearn.cross_validation import train_test_split
from sklearn.linear_model import LinearRegression

# Use only one feature : CollegeGPA
labour_data_gpa = labour_data[['collegeGPA']]

# salary as a dependent variable
labour_data_salary = labour_data[['Salary']]

# Split the data into training/testing sets
gpa_train, gpa_test, salary_train, salary_test = train_test_split(labour_data_gpa, labour_data_salary)

# Create linear regression object
 regression = LinearRegression()

# Train the model using the training sets (first parameter is x )
 regression.fit(gpa_train, salary_train)

#coefficients 
regression.coef_

The output is : Out[12]: array([[ 3235.66359637]])

嘗試:

regression = LinearRegression(fit_intercept =True)
regression.fit(gpa_train, salary_train)

結果將在

regression.coef_
regression.intercept_

為了更好地理解您的線性回歸,您可能應該考慮另一個模塊,以下教程有幫助: http : //statsmodels.sourceforge.net/devel/examples/notebooks/generated/ols.html

salary_pred = regression.predict(gpa_test)
print salary_pred
print salary_test

我認為 s alary_pred = regression.coef_*salary_test 有一個嘗試,印刷salary_predsalary_test通過pyplot。 圖可以解釋一切。

在這里,您正在根據單個特征gpa和目標salary訓練模型:

regression.fit(gpa_train, salary_train)

如果您在多個特征上訓練您的模型,例如python_gpajava_gpa (目標為salary ),那么您將得到兩個表示方程系數的輸出(對於線性回歸模型)和一個截距。

等價於: ax + by + c = salary (其中c是截距, ab是系數)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM