专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

使用Python对股票参数进行特征重要性分析

  前言
  特征重要性分析,顾名思义就是要看看这一批参数里面,各个参数对模型预测结果的贡献度分别是多少,对于每一个预测结果来说,哪些参数的贡献度是最大的,哪些参数是无关紧要的。在本文中,我们以预测股票涨跌为例,简要介绍使用Python来对股票预测模型的参数进行特征重要性分析的方法,希望对大家能有所帮助。导入依赖包importsysimportnumpyasnpimportcsvimportpandasaspdfromsklearn。modelselectionimporttraintestsplitfromsklearn。ensembleimportRandomForestRegressorfromsklearn。inspectionimportpermutationimportanceimportshapfrommatplotlibimportpyplotaspltprint(pythonversion:{}。format(sys。version))
  这里我使用的Python版本是:3。9。5(tagsv3。9。5:0a7dcbd,May32021,17:27:52)准备好模型训练所需的数据
  要对预测模型的参数进行重要性分析,首先我们得有关于这些参数的数据(如:MACD,MACDDIF,MACDDEA,DMADIF,PLRC12,PLRC6,Price1M,Price3M,EMA5,EMAC10等等)。这些参数我已经事先准备好了,这里我们只需从文件中读取即可。
  使用下面的代码将数据从文件中读取出来:CSVFILEPATH。backupstocksdatatest。csvdatapd。readcsv(CSVFILEPATH)row0list(data。loc〔0〕)rownumdata。iloc〔:,0〕。sizeprint(datalen:{}。format(len(row0)))print(rownum:{}。format(rownum))ylist〔〕用于存放标签数据xlist〔〕用于存放特征数据foriinrange(rownum):rowdatalistlist(data。loc〔i〕)ylist。append(int(rowdatalist〔0〕))xlist。append(rowdatalist〔1:〕)将数据类型由list转换为arrayxarraynp。array(xlist)yarraynp。array(ylist)print(xarrayshape:{}。format(xarray。shape))print(yarrayshape:{}。format(yarray。shape))print(ColumnName)print(list(data。columns))print(Finished)
  从代码运行的输出结果中可以看到,我们这一批数据总共有19个参数以及6884个样本:
  划分训练集和测试集
  使用如下代码将整个数据划分为两个部分:测试集和训练集。训练集用于模型训练,测试集用于模型验证和测试。testsize0。2设置测试集的样本数量为全部样呗的20randomstate12设置随机种子为12shuffleTrue打乱样本数据的顺序xtrain,xtest,ytrain,ytesttraintestsplit(xarray,yarray,testsize0。2,randomstate12,shuffleTrue)print(xtrainshape:{}。format(xtrain。shape))print(ytrainshape:{}。format(ytrain。shape))print(xtestshape:{}。format(xtest。shape))print(ytestshape:{}。format(ytest。shape))print(Finished)
  从代码的运行输出结果可以看到,这里我们划分的训练集样本数量为5507个,测试集的样本数量为1377个。
  用随机森林回归算法对模型进行训练nestimators:森林中决策树的数量rfRandomForestRegressor(nestimators100)rf。fit(xtrain,ytrain)print(Finished)
  模型训练好了之后,我们可以使用如下代码使用模型对测试集中的数据进行预测:predictvaluerf。predict(xtest)foridx,valueinenumerate(predictvalue):print(〔predict〕:idx{},label{},predict{}。format(idx,ytest〔idx〕,value))print(Finished)调用模型解释包shap对参数进行特征重要性分析我们记录在文件中的数据的特征参数名称columnsnamelist〔ChangePercent,MACD,MACDDIF,MACDDEA,DMADIF,PLRC12,PLRC6,Price1M,Price3M,EMA5,EMAC10,EMAC12,EMAC20,EMAC26,MAC5,MAC10,MAC20,MAC60,MAC120〕explainershap。TreeExplainer(rf)shapvaluesexplainer。shapvalues(xtest)shap。summaryplot(shapvalues,xtest,featurenamescolumnsnamelist)print(Finished)
  运行上面的代码,我们就可以看到各个参数对模型预测结果的贡献度了,红色代表正向贡献,蓝色代表负向贡献,参数的贡献度从上往下是由大到小,具体情况如下图所示:
  对单个预测结果的特征贡献度进行可视化显示shap。initjs()shap。forceplot(explainer。expectedvalue,shapvalues〔0,:〕,xtest〔0,:〕,featurenamescolumnsnamelist)shap。initjs()shap。forceplot(explainer。expectedvalue,shapvalues〔4,:〕,xtest〔4,:〕,featurenamescolumnsnamelist)
  对测试集全部样本预测结果的特征重要性进行可视化shap。initjs()shap。forceplot(explainer。expectedvalue,shapvalues,xtest,featurenamescolumnsnamelist)
  结语
  以上就是使用Python对股票涨跌预测模型的参数进行重要性分析的方法了,如果感觉还不错的话,可以帮忙给个赞哦,感谢各位支持。需要注意的是,模型预测的准确性和模型以及数据都有关系,要谨慎使用。

小米8屏幕版指纹的845AIE处理器和小米8的845处理器有哪些不一样?小米8不论是屏幕指纹版,还是小米8标准版,用的都是骁龙845AIE处理器。大家对这个AIE了解多少,这个AIE又是什么东西呢?骁龙处理器后缀上的AIE,实际上就是代表,这个处理器拥女人肝不好,身体会有哪些表现?如何调养?肝脏是人体最大的解毒器官,如果肝脏功能出现了问题,那么解毒造血和凝血等功能势必会受影响,久而久之,往往会有一些临床表现,不过也不排除部分患者无任何临床症状,只是在体检的时候才发现了在深圳看病要预约,医生开单拍片还预约,取片挂号看结果,检查一次要几天大家怎么看?现在生意最好的就是医院,各地大医院看病都很拥挤。深圳情况不明,肯定是深圳医院看病更拥挤造成的。希望能多开几家医院。同时请广大病人不是大病,重病先尽量在社区医院(诊所)看病。不到万不田亮一家基因真好,个个高颜值大长腿,14岁森碟甜美靓丽身高超妈不得不说,身高可以在穿搭中带来很多方面的优势,不仅更能展现出服饰想要表达的风格与效果,而且还可以通过高挑修长的身形线条来展现出带有更多魅力的美感。说到身高就不得不提到又有高颜值又有沛纳海宣布赵又廷任品牌大使庆祝2023钟表与奇迹日内瓦钟表展表迷网消息2023年3月27日,上海集纯正意大利设计和优异瑞士制表技艺于一身的高级运动腕表品牌沛纳海宣布演员赵又廷出任品牌大使。为致敬品牌传奇历史及Radiomir镭得米尔系列宇宙逆袭优衣库,私域用户超1000万,UR如何布局私域?过去几年受疫情影响,线下门店的生意普遍遭到了较大的冲击。不少服装店都遭遇了裁员闭店甚至倒闭的危机。尤其在经历新疆棉事件之后,以ZARAHMGAP为代表的国外快时尚品牌已然风光不再,哥弟阿玛施歌莉娅,达衣岩等为何现在我们很难看到?阳光灿烂,春日渐浓。自然唤醒了感官和内心的火热,不由的想沉浸在春日的逸趣中,行走着,踩着心跳的律动行走着,足迹早已将命运踩定,不需要终点,也不会有疆界,躯壳不应成为心脏的监狱,思想为什么男友脸上看着干干净净,用了黑头导出液可以敷出那么多?先看下昨晚我给男朋友敷出来的黑头,压压惊!就问你的黑头有我男票的严重吗?我真的涨姿势了,原来毛孔里面可以藏这么多脏东西!!大家想想看,如果不清洁毛孔,用再多护肤品都白搭,根本吸收不东莞和惠州不支持买房入户,孩子将来读书怎么处理?入户的方式很多,买房只是其中之一,惠州的买房入户截止在16年12月。惠州东莞两个城市,现在更注重对人才的吸引,惠州对全日制本科,不超过45岁,可直接入户,应届本科生毕业,也可直接入五十多岁的人了,突然想学车,退休后好自驾游,这种想法还现实吗?其实,我觉得题主提出这个问题,是想表达自己的两种想法1自己五十多岁了,突然想学车。2学会了开车,退休后好自驾游。无论是哪一种想法,在我看来,这样的想法,都是比较现实的,也都不为过。农村现在安装宽带需要交多少安装费,你觉得如果有安装费合理吗?一般安装有线宽带都要收初装费,基本都是100块钱人工费,或者100块钱的设备调制解调器,如果安装是光纤宽带,收费可能要三四百,因为调制解调器更贵,安装更复杂,,还有不同的地区收费可
国庆节聚餐,分享5道下酒菜,鲜香美味,家人吃开心,做法还简单国庆节聚餐,分享5道下酒菜,鲜香美味,家人吃开心,做法还简单。国庆长假快到了,想必很多人都已经很期待假期的到来,因为前阵子特殊的口罩原因,很多人都很长时间没有回家和家人团聚了,这次这才是煮荷包蛋的正确做法,出锅个个鲜嫩不散花,连吃6个都不腻生活没有彩排,美食没有美颜。大家好,今天用鸡蛋给大家分享一个关于鸡蛋不一样的吃法。鸡蛋,我们大家都是非常的熟悉,它是一种非常有营养的食物,可以用各种烹饪方式做成各种好吃的美食,吃起1971年宋子文去世,宋氏三姐妹都缺席葬礼,尼克松搞不懂中国人民国时期的四大家族,几乎掌控了这个社会的所有命脉,不管是经济还是政治,又或者是军事,四大家族皆有着很强的话语权。民国时期混乱不堪,普通百姓苦不堪言,易子而食的事情甚至都时有发生。但张宗昌的姨太太和副官偷约,被撞了个正着,张宗昌的做法让人佩服民国是一个动荡的年代,各色英雄人物与奸佞之徒你方唱罢我登场,为这短短的几十年增添了一笔又一笔的浓墨重彩。若问民国最出名的是什么,那就是混战割据的军阀,这些军阀雄踞一方,俨然如同古代2021年中国游戏产业状况分析报告羊了个羊爆火,游戏和电竞产业势头正劲最近微信小程序里有一款名叫羊了个羊的小游戏彻底火了,甚至成为社交话题,引发网络讨论,那么我国游戏市场行业发展情况究竟如何,请看2021年中国游戏为什么吃得不多但体重下不来?真的有易胖体质吗?斌姐好,为什么我吃得不多但体重下不来?真的有易胖体质吗?所谓的吃得不多在我们营养师眼里还真不一定,建议连续做三天膳食记录,其中一天要包括周末,记录时不要落下一粒坚果一杯饮料,一般总每天都按照这4个吃饭步骤,不仅饿得慢,还能降低体重有助减肥俗话说一日三餐,每餐都不能少,不仅如此,还有人喜欢一日多餐,时不时就在两餐之间加甜点吃零食,久而久之,体重不易控制,迟早会成为一名彻头彻尾的胖子。尤其是长期这样吃的人,你会在无形之肝火旺的三大表现北京市昌平区中医医院魏增敏是主任医师昌平区优秀名老中医,有着近50年的临床治疗经验今天给大家分享一下肝火旺的三大原因,已经该如何改善1急躁易怒,爱生气。2耳鸣耳聋,口干眼干,面红目杜兰特低情商言论再现,詹姆斯新赛季目标曝光,美媒爆四方交易北京时间9月28日,自由市场正在如约而至的持续发酵中,各支球队都在跃跃欲试,地震级交易以及顶薪续约合同此起彼伏,联盟也在不断上演着抢人大战,为下赛季的球队崛起保驾护航。杜兰特低情商9月27日足球资讯0019月27日1900韩国喀麦隆韩国伤停赵贤祐,朴志洙,李鎔,鄭昇炫,松旻揆,金鎮圭,严原上,南泰熙,李東俊,李东炅,曹圭成球队新闻上场友谊赛韩国22战平哥斯达黎加,孙兴慜打进一为何美国媒体很少拿科比对比乔丹?看乔丹40岁数据秒懂,科比尴尬乔丹,NBA历史最伟大的球员,没有之一,科比,NBA历史上最好的球员之一,两者都曾经是所在年代的NBA现役第一人,但是有趣的是,相比如今媒体和球迷喜欢拿詹姆斯和乔丹相比较,为何美国
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网