ixi
yi154
2563
108420
1353016640
1775019860
2596525
1090
2911
12046
這裡面涉及到求回歸係數,擬合值,擬合直線,f檢驗統計量的計算。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data = pd.read_csv('c:/users/admin/desktop/2019.10.05/回歸分析/data.csv') # 讀取資料
data=data.drop('i', axis=1) #去掉序號那一列
#樣本相關係數,可用於回歸檢驗
r=data.corr()
describe=data.describe() #描述性統計
mean=describe.loc['mean'] #列均值
m=data.index.size #資料行數
# xx=0
# yy=0
# xy=0
# for i in range(0,m):
# xx=xx+data.iloc[i,0]**2
# yy=yy+data.iloc[i,1]**2
# xy=xy+data.iloc[i,0]*data.iloc[i,1]
## lxx=xx-m*(mean[0]**2)
# lyy=yy-m*(mean[1]**2)
# lxy=xy-m*mean[0]*mean[1]
lxx=sum(x**2 for x in data['xi'])-m*(mean[0]**2)
lyy=sum(x**2 for x in data['yi'])-m*(mean[1]**2)
# 舉例:
# func = lambda x,y:x*y
# result=map(func,[1,2,3,4],[4,3,2,1])
# list_result = list(result)
# print(list_result)
func = lambda x,y:x*y
result=map(func,data['xi'],data['yi'])
list_result = list(result)
lxy=sum(list_result)-m*mean[0]*mean[1]
# print(lxx)
# print(lxy)
# print(lyy)
b1=lxy/lxx
b0=mean[1]-b1*mean[0]
print("常數項回歸係數:\n%f\n一次項回歸係數:\n%f"%(b0,b1))
#小數字數的控制,("%.4f" % b0)是str型別,所以轉為浮點數
# b0=float(("%.4f" % b0))
# b1=float("%.4f" % b1)
data['擬合值']=[b0+b1*x for x in data['xi']] #新增一列:擬合值
print("\n擬合值:")
print(data) #在原有資料上加有擬合值一列
st=lyy #總離差平方和:st
sr=sum((x-mean[1])**2 for x in data['擬合值']) #殘差平方和:sr
se=lyy-b1*lxy #回歸平方和:se
print("\nf統計量的值:")
print((sr/1)/(se/(m-2))) #f統計量
plt.scatter(data['xi'],data['yi'],alpha=0.5, color='blue') # 1.真實的點
plt.plot(data['xi'],data['擬合值'], alpha=0.5,color='red', linewidth=4) # 2.擬合的直線
plt.show()
其中describe=data.describe()的輸出為:
xiyi
count
11.000000
11.000000
mean
45.000000
18.909091
std36.878178
12.103343
min5.000000
4.000000
25%15.000000
10.500000
50%40.000000
17.000000
75%62.500000
25.000000
max120.000000
46.000000
輸出結果:常數項回歸係數:4.366811,一次項回歸係數:0.323162,f統計量的值:286.52242428783325
spss回歸分析結果:
模型摘要
模型 r r 方 調整後 r 方 標準估算的誤差
1 .985a .970 .966 2.226
a **變數:(常量), xi
anovaa
模型 平方和 自由度 均方 f 顯著性
1 回歸 1420.296 1 1420.296 286.522 .000b
殘差 44.613 9 4.957
總計 1464.909 10
a 因變數:yi
b **變數:(常量), xi
python 回歸 顯著 強勢回歸,再說回歸分析
高爾頓發現了 向平均回歸 乙個總體中在某一時期具有某一極端特徵的個體在未來的某一時期將減弱它的極端性,比如非常矮小的父輩傾向於有偏高的子代,而非常高大的父輩則傾向於有偏矮的子代。這些都是 回歸效應 函式關係是一一對應的確定關係,因變數y隨自變數x的變化而變化,比如銷售額和銷量之間的關係,就是線性函式...
Python 邏輯回歸分析
以某銀行貸款拖欠率資料進行邏輯回歸建模,資料示例如下 特徵篩選 本例採用穩定性選擇方法中的隨機邏輯回歸 建立模型 利用篩選後的特徵建立邏輯回歸模型 輸出平均正確率 coding utf 8 邏輯回歸 自動建模 import pandas as pd 引數初始化 filename data bankl...
機器學習(2) 回歸演算法 回歸分析
在統計學中,回歸分析 regression analysis 指的是確定兩種或兩種以上變數間相互依賴的定量關係的一種統計分析方法。回歸分析按照涉及的變數的多少,分為一元回歸和多元回歸分析 按照因變數的多少,可分為 簡單回歸 分析和多重回歸分析 按照 自變數和 因變數之間的關係型別,可分為 線性回歸 ...