參加數學建模會用到統計學的知識解決單一因素與多變數之間的關係,也多用線性回歸的知識,書上講解主要用matlab去做,但主要還是自己懶,短期內不想再去學習,於是嘗試用python中的模組取模擬,但是好像sklearn中不帶有置信區間,想用的話得自己實現,反正也不太懂置信區間,就直接幹吧。
'''
線性回歸
'''import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import linearregression
class linear(object):
def __init__(self, x):
self.x = x
self.lenth = len(x)
return none
def create_data(self):
self.y = self.x*3 + 5.3 + np.random.randn(self.lenth)
return self.y
def plot_data(self, x_test=none, y_hat=none, c='r'):
plt.figure(figsize=(12, 9))
plt.scatter(self.x, self.y, c='b', label='original')
if type(y_hat) != none:
plt.scatter(x_test, y_hat, c=c, label='predict')
plt.ylim(0)
plt.legend()
plt.show()
return none
def model(self):
self.linear = linearregression(fit_intercept=true)
self.linear.fit(self.x.reshape(-1, 1), self.y)
return none
def predict(self, x_test):
return self.linear.predict(x_test)
def coef_intercept(self):
print('線性回歸的回歸係數:', self.linear.coef_)
print('線性回歸的截距:', self.linear.intercept_)
return none
if __name__ == '__main__':
x = np.arange(20)
temp = linear(x)
y = temp.create_data()
temp.model()
y_hat = temp.predict(x.reshape(-1, 1))
temp.plot_data(x, y_hat)
temp.coef_intercept()
第一次寫物件導向的**,感覺執行起來好像也沒什麼bug。如果有錯誤希望以後再看能找到吧。 數學建模資料分析中的多元線性回歸分析
多元線性回歸分析 通過研究自變數 x xx 和因變數 y yy 的相關關係,嘗試去解釋 y yy 的形成機制,進而達到通過 x xx 去 y yy 的目的 2 多元線性回歸分析 7.擬合優度 r 2r 2 r2較低的解決方法 8.擾動項與異方差 9.多重共線性 3 stata的使用 不同分類的資料的...
線性回歸數學推導
個人掘金鏈結 概率 probability 描述已知引數時的隨機變數的輸出結果 似然函式 likelihood 用來描述已知隨機變數輸出結果時,未知引數的可能取值。l theta x f x theta 似然函式和密度函式是完全不同的兩個數學物件,前者是關於 theta 的函式,後者是關於 x 的函...
數學建模 非線性規劃
2014年4月17日 規劃方法是建模中的常用手段。那麼顯然要人有我優了,非線性規劃就是乙個不錯的加分點。下面介紹幾種常用的非線性規劃技巧 這裡要說一下無約束法,規劃問題的困難在於求解,特別是約束比較奇怪的。於是在比賽中把有約束的規劃問題轉換成無約束的規劃問題就成了乙個大大的加分點。另外dfp之類的包...