楼主: flyloop
2097 2

[问答] 求助:关于神经网络生存分析方法R实现 [推广有奖]

  • 6关注
  • 0粉丝

博士生

17%

还不是VIP/贵宾

-

威望
0
论坛币
723 个
通用积分
2.4000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
867 点
帖子
89
精华
0
在线时间
392 小时
注册时间
2013-4-7
最后登录
2024-6-14

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
不知道论坛里有没有利用神经网络的高人啊,本人最近看了很多文献,但是都没有写R是如何实现的,在网上搜索到了Hazlina Hamdan 的幻灯“Modelling survival prediction in medical data”对于训练组和验证组的分类很是不懂,研究Elia Biganzoli的文章"Feed forward neural networks for the analysis of censored survival data:A partial logistic regression approach"很多遍,还是一知半解,不知有无这方面的专家啊给予解答啊,特别是R程序实现代码!不慎感激,附上幻灯和文章 Feed forward neural networks for the analysis of censored survival data_ a parti.pdf (2.81 MB) hzh-31-03-2009.ppt (626 KB)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:神经网络 生存分析 分析方法 R实现 神经网 网络

沙发
DM小菜鸟 发表于 2014-12-12 15:52:00 |只看作者 |坛友微信交流群
给个BP神经网络的全代码给你吧

library(nnet)  
source <- c(10930,10318,10595,10972,7706,6756,9092,10551,9722,10913,11151,8186,6422,  
6337,11649,11652,10310,12043,7937,6476,9662,9570,9981,9331,9449,6773,6304,9355,10477,  
10148,10395,11261,8713,7299,10424,10795,11069,11602,11427,9095,7707,10767,12136,12812,  
12006,12528,10329,7818,11719,11683,12603,11495,13670,11337,10232,13261,13230,15535,  
16837,19598,14823,11622,19391,18177,19994,14723,15694,13248,9543,12872,13101,15053,  
12619,13749,10228,9725,14729,12518,14564,15085,14722,11999,9390,13481,14795,15845,  
15271,14686,11054,10395,14775,14618,16029,15231,14246,12095,10473,15323,15381,14947)  
srcLen<-length(source)  
for(i in 1:10){  #预测最后十个数;  
    real <- source[srcLen-i+1] #实际值  
    xNum=(srcLen-i+1)%/%7      #组数  
    yNum=7                     #每组7个数  
    data<-array(1:(xNum*yNum),c(xNum,yNum))  
   
    pre=srcLen-i+1;  
    for(x in 1:xNum){          #数组赋值  
        for(y in 1:yNum){  
            data[x,y]=source[pre]  
            pre=pre-1;  
            
        }  
        if(pre<7){  
            break;  
        }  
    }  
    ascData<-array(1:(xNum*yNum),c(xNum,yNum)) #数组逆序  
    for(x in 1:xNum){  
        for(y in 1:yNum){  
            ascData[x,y]=data[xNum-x+1,y]  
        }  
    }  
    colnames(ascData) <- c("a","b","c","d","e","f","g") #每列列名  
   
    trainData<-data.frame(scale(ascData[,c(1:7)]))        
     
    nn<-nnet(a~b+c+d+e+f+g,trainData[1:(xNum-1),],size=10,decay=0.01,maxit=1000,linout=F,trace=F)  
    predict<-predict(nn,trainData[xNum,])  
     
    predict=predict*sd(ascData[,1])+mean(ascData[,1])  
    percent <- (predict-real)*100/real  
    res <- paste("预测值:",predict,"实际值:",real,"误差:",percent)  
    print(res)  
}  


注意上面的测试数据有周期性...

使用道具

藤椅
monicawang 发表于 2014-12-13 06:37:54 |只看作者 |坛友微信交流群
高人. 感谢分享

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-6-16 13:21