- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
;;在实际问题中,经常遇到需要研究两组多重相关变量间的相互依赖关系,并研究用一组变量(常称为自变量或预测变量)去预测另一组变量(常称为因变量或响应变量),除了最小二乘准则下的经典多元线性回归分析(MLR),提取自变量组主成分的主成分回归分析(PCR)等方法外,还有近年发展起来的偏最小二乘(PLS)回归方法。
;偏最小二乘回归提供一种多对多线性回归建模的方法,特别当两组变量的个数很多,且都存在多重相关性,而观测数据的数量(样本量)又较少时,用偏最小二乘回归建立的模型具有传统的经典回归分析等方法所没有的优点。
偏最小二乘回归分析在建模过程中集中了主成分分析,典型相关分析和线性回归分析方法的特点,因此在分析结果中,除了可以提供一个更为合理的回归模型外,还可以同时完成一些类似于主成分分析和典型相关分析的研究内容,提供更丰富、深入的一些信息。;;;;#程序文件ex13_1.py
importnumpyasnp
importpylabasplt
fromsklearn.cross_decompositionimportPLSRegression
fromscipy.statsimportzscore
fromsklearn.model_selectionimportcross_val_predict
fromsklearn.metricsimportmean_squared_error
?
d0=np.loadtxt(data13_1.txt);N=d0.shape[0]
mu=d0.mean(axis=0)#求均值
s=d0.std(axis=0,ddof=1)#求标准差
r=np.corrcoef(d0.T)#求相关系数矩阵
d=zscore(d0,ddof=1)#数据标准化
a=d[:,:3];b=d[:,3:]
n=a.shape[1];m=b.shape[1]#自变量和因变量个数
rmse=[]#均方误差初始化;foriinrange(1,n+1):#以下确定成分的个数
pls=PLSRegression(i)
y_cv=cross_val_predict(pls,a,b)
rmse.append(mean_squared_error(b,y_cv))
nmin=np.argmin(rmse);print(均方误差:\n,rmse)
print(建议的成分个数:,nmin+1)
?
md=PLSRegression(2).fit(a,b)
xd=md.x_scores_;yd=md.y_scores_#成分得分
zx=np.linalg.pinv(a)@xd#计算自变量的成分系数
print(自变量的成分系数(列):\n,zx)#每列为一成分
zy=np.linalg.pinv(b)@yd#计算因变量的成分系数
print(因变量的成分系数(列):\n,zy)#每列为一成分
xzh=md.x_loadings_#x主成分回归系数
yzh=md.y_loadings_#y主成分回归系数
print(x主成分回???(行):\n,xzh);print(\n------)
print(y主成分回归(行):\n,yzh);print(\n------)
;beta2=md.coef_#每一列是y对x的回归系数
print((标准化)y关于x回归系数(列):\n,beta2)
beta3=np.zeros((n+1,m))
beta3[0,:]=mu[n:]-mu[:n]/s[:n]@beta2*s[n:]
foriinrange(m):
beta3[1:,i]=s[n+i]/s[:n]*beta2[:,i]
print((原始数据)y关于x回归系数(列):\n,beta3)
aa=np.hstack([np.ones((N,1)),d0[:,:n]])
yh=aa@beta3#求预测值
?
plt.rc(font,family=SimHei);plt.rc(axes,unicode_minus=False)
plt.rc(font,size=15);x0=np.arange(1,4)
plt.bar(x0,beta2[0,:],0.1)
plt.bar(x0+0.1,beta2[1,:],0.1);plt.bar(x0+0.2,
您可能关注的文档
- 《Python数学建模算法与应用课件》02第2章 Python使用入门(2).pptx
- 《Python数学建模算法与应用课件》03第3章 线性代数模型.pptx
- 《Python数学建模算法与应用课件》04第4章 线性规划和整数规划模型.pptx
- 《Python数学建模算法与应用课件》05第5章 非线性规划和多目标规划模型.pptx
- 《Python数学建模算法与应用课件》06第6章 图论模型(1).pptx
- 《Python数学建模算法与应用课件》06第6章 图论模型(2).pptx
- 《Python数学建模算法与应用课件》07第7章 插值与拟合.pptx
- 《Python数学建模算法与应用课件》08第8章 常微分方程与差分方程.pptx
- 《Python数学建模算法与应用课件》09第9章 数据的描述性统计方法.pptx
- 《Python数学建模算法与应用课件》10第10章 回归分析.pptx
最近下载
- 物联网平台 ThingsBoard 教程.pdf VIP
- 1.1互动开放的世界 (课件)2025-2026道德与法治 九年级下册 统编版.pptx VIP
- 人教A版高中数学新教材中复习参考题的分析及使用现状研究.pdf
- 2024年卫生高级职称面审答辩(中医骨伤科)副高面审模拟试题及答案.docx
- 医院感染性疾病科护士面试题及参考答案结构化面试题.docx VIP
- DBJ33_T 1334-2024 《建筑施工承插型盘扣式钢管支撑架安全技术规程》 .docx VIP
- 水污染试题(5套)含答案3.docx VIP
- 班组长安全管理培训课件.ppt VIP
- 康复科室建设规划.pptx
- φ56组合锚绞机恒张力液压控制系统设计和分析.pdf VIP
原创力文档


文档评论(0)