mat<-replicate(100, rnorm(20))
mydecom<-sparseDecom( mat )
mat<-scale(mat)
mydecom2<-sparseDecom( mat )
# params that lead to algorithm similar to NMF
mydecom3<-sparseDecom( mat, z=1, sparseness=1 )
## Not run:
# # for prediction
# if ( usePkg("randomForest") & usePkg("spls") & usePkg('BGLR') ) {
# data(lymphoma) # from spls
# training<-sample( rep(c(TRUE,FALSE),31) )
# sp<-0.02 ; myz<-0
# ldd<-sparseDecom( lymphoma$x[training,], nvecs=5 , sparseness=( sp ),
# mycoption=1, z=myz ) # NMF style
# traindf<-data.frame( lclass=as.factor(lymphoma$y[ training ]),
# eig = lymphoma$x[training,] %*% as.matrix(ldd$eigenanatomyimages ))
# testdf<-data.frame( lclass=as.factor(lymphoma$y[ !training ]),
# eig = lymphoma$x[!training,] %*% as.matrix(ldd$eigenanatomyimages ))
# myrf<-randomForest( lclass ~ . , data=traindf )
# predlymp<-predict(myrf, newdata=testdf)
# print(paste('N-errors:',sum(abs( testdf$lclass != predlymp ) ),
# ' non-zero ',sum(abs( ldd$eigenanatomyimages ) > 0 ) ) )
# # compare to http://arxiv.org/pdf/0707.0701v2.pdf
# # now SNPs
# data(mice)
# snps<-quantifySNPs( mice.X, shiftit = TRUE )
# numericalpheno<-as.matrix( mice.pheno[,c(4,5,13,15) ] )
# nfolds<-6
# train<-sample( rep( c(1:nfolds), 1800/nfolds ) )
# train<-( train < 4 )
# lrmat<-lowrankRowMatrix( as.matrix( snps[train,] ) , 50 )
# lrmat=scale(lrmat)
# snpd<-sparseDecom( lrmat-min(lrmat), nvecs=20 , sparseness=( 0.001), z=-1 )
# projmat<-as.matrix( snpd$eig )
# snpse<-as.matrix( snps[train, ] ) %*% projmat
# traindf<-data.frame( bmi=numericalpheno[train,3] , snpse=snpse)
# snpse<-as.matrix( snps[!train, ] ) %*% projmat
# testdf <-data.frame( bmi=numericalpheno[!train,3] , snpse=snpse )
# myrf<-randomForest( bmi ~ . , data=traindf )
# preddf<-predict(myrf, newdata=testdf )
# cor.test(preddf, testdf$bmi )
# plot(preddf, testdf$bmi )
# } # check for packages
# # prior-based example
# set.seed(123)
# ref<-antsImageRead( getANTsRData("r16"))
# ref<-iMath(ref,"Normalize")
# mi<-antsImageRead( getANTsRData("r27"))
# mi2<-antsImageRead( getANTsRData("r30"))
# mi3<-antsImageRead( getANTsRData("r62"))
# mi4<-antsImageRead( getANTsRData("r64"))
# mi5<-antsImageRead( getANTsRData("r85"))
# refmask<-getMask(ref)
# refmask<-iMath(refmask,"ME",2) # just to speed things up
# ilist<-list(mi,mi2,mi3,mi4,mi5)
# for ( i in 1:length(ilist) )
# {
# ilist[[i]]<-iMath(ilist[[i]],"Normalize")
# mytx<-antsRegistration(fixed=ref , moving=ilist[[i]] ,
# typeofTransform = c("Affine") )
# mywarpedimage<-antsApplyTransforms(fixed=ref,moving=ilist[[i]],
# transformlist=mytx$fwdtransforms)
# ilist[[i]]=mywarpedimage
# }
# mat=imageListToMatrix( ilist , refmask )
# kmseg=kmeansSegmentation( ref, 3, refmask )
# initlist=list()
# for ( k in 1:3 )
# initlist[[k]]=
# thresholdImage(kmseg$probabilityimages[[k]],0.1,Inf) *
# kmseg$probabilityimages[[k]]
# eanat<-sparseDecom( mat,
# inmask=refmask, ell1=0.1,
# sparseness=0.0, smooth=0.5, verbose=1,
# initializationList=initlist, cthresh=25,
# nvecs=3, priorWeight=0.5 )
# ee=matrixToImages( eanat$eigenanatomyimages, refmask )
# eseg=eigSeg( refmask, ee )
# priormat=imageListToMatrix( initlist, refmask )
# cor( t(eanat$eigenanatomyimages), t(priormat) )
# plot( ref, eseg )
# ## End(Not run)
Run the code above in your browser using DataLab