Kai’blog

主博客 | 势利纷华,近之而不染者洁,不近者亦洁,君子不立危墙之下。

美赛2023C练习-做题笔记

代码:

clc;load("data.mat");save("data.mat");TC=ProblemCDataWordle;%数据处理noC=TC(:,1);wordC=TC(:,2);dataC=TC(:,3:11);no=cell2mat(noC);data=cell2mat(dataC);L=size(wordC);L=L(1);word=[];%原表格有错误,根据网络数据进行修正wordC{36}="clean" ;wordC{247}="trash";data(32,1)=22569;%修正endwordnum=zeros(L,5);for i=1:L    str=char(wordC{i});    num=0;    for j=1:5        num=num*100;        num=num+str(j)-'a'+1;        wordnum(i,j)=str(j)-'a'+1;    end    word=[word;num];endHp=data(:,2)./data(:,1);Players=data(:,1);ana=data(:,3:7);%数据处理完毕%plot(no,Players);X=[no no.*no no.*no.*no no.*no.*no.*no no.*no.*no.*no.*no no.*no.*no.*no.*no.*no...   exp(no) exp(no.*no) log(no) log(no).*log(no) ...   exp(no).*log(no)];y=Players;%stepwise (X,y);%R方=0.985990约等于0.986 调整后R方=0.985711 完全通过F检验%x1 x2 x3 x4 x5 x9 x10都极强的通过p检验%y=-298444e+10+54082223.7047499*no-70804.0624355989*no.^2+81.2251478254803*no.^3%  -0.0581796757825891*no.^4+1.87254597040691e-605*no.^5+14792650464.3214*log(no)%  -2033287277.42065*log(no).*log(no)close all;gy=fun1(no);%plot(no,gy);hold on;%scatter(no,Players); %scatter(no,(gy-y)/y);e=flip(gy-y);ds=[];ebar=[];for i=1:L    de=e(i:L,1);    newebar=sum(abs(de))/(L-i+1);    newds=sqrt(sum(de.*de)/(L-i+1));    ds=[ds;newds];    ebar=[ebar;newebar];endhold on; %scatter(202:201+L,ds); %scatter(202:201+L,ebar);%全过程方差10521,后半段方差2735.81%newX=X(:,[1 2 3 4 5 9 10]);%后来又尝试加入了各种函数,但多余变量的加入什么也没改变,说明原模型已经非常好了,或者说没有改进空间了。只有加入exp(-no)的时候带来了微弱的提升,但没什么用就不管了%stepwise(newX,y);%model=fitlm(newX,y)% ci=coefCI(model)% 不懂fitlm为什么算出来的和stepwise不一样,不管了,反正stepwise也提供置信区间% % stepwise提供的置信区间% 45542572.6802495	62621874.7292504% -83037.1825962702	-58570.9422749276% 65.9332107876828	96.5170848632777% -0.0700610194043316	-0.0462983321608466% 1.45963099050699e-05	2.28546095030684e-05% 12719524815.9227	16865776112.7201% -2325793821.44112	-1740780733.40019% 经过调查,发现这是回归系数的95%置信区间...而不是函数值的 %fun1(540)=20838%自由度为 n - p - 1,其中 n 是样本量,p 是自变量的数量。因此自由度极大,此时t分布近似于标准正态分布%标准误差是残差的标准差,上下浮动曲线是对应的分位数乘以标准误差%95%置信水平在正态分布中对应的分位数是1.96,所以对应浮动量是20621.16、5362.1876,这个太恐怖了%80%置信水平则是对应1.28,这个也太恐怖了%那就专门针对后半段建立拟合曲线,标准差近似为2735.81%因此,在95%置信水平中,[15476,26200].置信区间的中值为20838 %scatter(no,(gy-y)./y);averagee=sum((gy-y)./y)/L;%误差率为0.0237816360614148,不如20838±2.378% 即[20342,21334]%model=fit(newX(:,1),y,"exp2"); %根据观察误差百分比图,我们发现误差百分比随时间没有表现出任何趋势,和时间的相关性也几乎没有,可以认为这是一个靠谱的拟合%此前随时间表现出差异的残差一方面是没转化为残差百分比,另一方面是有一个异常数据,教训是以后做题前、做题后都得更关注异常数据才是%我们观察到97%的数据点的偏差都落在了±20%的区间内,我们可以说我们至少可以以95%的置信水平预测23/3/1的数据是落在[16670 25006]中,置信区间中值是20838    %n*sin(n/2/pi) %X=[wordnum  exp(wordnum) log(wordnum) wordnum.*sin(wordnum/2/pi)];%Q1-2wordnum;Hp=data(:,2)./data(:,1);%scatter(no,Hp)%wordnum->HX=[wordnum exp(wordnum) wordnum.*sin(wordnum/2/pi)]%没跑出结果,但 再猜出单词之前玩家就已经决定模式了,那么当天的单词是什么是无法影响玩家的模式选择的。所以答案就是:没有关系。%愣要说关系的话,我观察到hard率和时间有强相关性。可能随着新玩家更喜欢挑战hard模式,在游戏之间爆火的过程中恰恰随着时间推移新玩家比率不断上升 Diff=(data(:,3)*1+data(:,4)*2+data(:,5)*3+data(:,6)*4+data(:,7)*5+data(:,8)*6)./ ...    (data(:,3)+data(:,4)+data(:,5)+data(:,6)+data(:,7)+data(:,8));   function answer=fun1(no)    answer=-29844369576.6553+54082223.7047499*no-70804.0624355989*no.^2+ ...        81.2251478254803*no.^3-0.0581796757825891*no.^4+0.0000187254597040691*no.^5 ...        +14792650464.3214*log(no)-2033287277.42065*log(no).*log(no);end   
posted @   Kai-G  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
Copyright © 2019-2020 拱垲. All rights reserved.
点击右上角即可分享
微信分享提示