R语言保存循环结果

Python022

R语言保存循环结果,第1张

k <- list()

for(i in 1:1000)

{

  k[[i]] <- nn2()

}

newdata=c()                        #1

for(i in 1:1000)

{

#方法一:三次样条法

library(splines)

m1 <- lm(h~bs(a,df=3),data=k[[i]])

#预测百分位数值

new <- data.frame(a=7:20)

cs.p <- predict(m1, new)

#均方差

mse.cs <- sum( (st$p50-cs.p)^2 )/14

#最大范数误差

mne.cs <- max(abs(st$p50-cs.p))

newdata<-rbind(newdata,mse.cs)        #2

print(newdata)                        #3

}

aa<-mean(newdata)          #4

新建newdata来保存循环的结果,以便对循环的结果进行后续操作比如求均值并保存在aa中

你在建立网络的时候不是用了net=newff(……)吗?这个net就是输出的结果。newff函数只是初始化一个神经网络,之后还得用train函数训练,训练好的net就是你要的网络。newff函数的格式为:net=newff(PR,[S1 S2 ...SN],{TF1 TF2...TFN},BTF,BLF,PF),函数newff建立一个可训练的前馈网络。输入参数说明:PR:Rx2的矩阵以定义R个输入向量的最小值和最大值;Si:第i层神经元个数;TFi:第i层的传递函数,默认函数为tansig函数;BTF:训练函数,默认函数为trainlm函数;BLF:权值/阀值学习函数,默认函数为learngdm函数;PF:性能函数,默认函数为mse函数。

分类任务的评价指标 有准确率,P值,R值,F1值,而回归任务的评价指标就是 MSE , RMSE , MAE 、 R-Squared均方误差MSE是真实值与预测值的差值的平方和然后求平均。通过平方的形式便于求导,所以常被用作线性回归的损失函数。 均方根误差RMSE,即均方误差开平方,常用来作为机器学习模型预测结果衡量的标准。MAE是绝对误差的平均值。可以更好地反映预测值误差的实际情况。R-Squared 又叫可决系数(coefficient of determination),也叫拟合优度,反映的是自变量 对因变量 的变动的解释的程度。越接近于1,说明模型拟合得越好。在sklearn中回归树就是用的该评价指标。 可以这么理解:将TSS理解为全部按平均值预测,RSS理解为按模型预测,这就相当于去比较你模型预测和全部按平均值预测的比例,这个比例越小,则模型越精确。当然该指标存在负数的情况,即模型预测还不如全部按平均值预测 缺点:当数据分布方差比较大时,预测不准时, 依然比较大,此时该评价指标就不太好其中:表述真实值 的变动程度,正比于方差表示模型预测 和真实值 之间的残差使用sklearn计算:MAE: 范围 , 当预测值与真实值完全吻合时等于0, 即完美模型误差越大, 该值越大。 MAPE: 范围[0,+ ), MAPE 为0%表示完美模型, MAPE大于100%则表示劣质模型。MAPE的值越小,说明预测模型拥有更好的精确度.