install.packages("glmnet")

library(glmnet)


X<-matrix( rnorm(15), ncol=5)

B<-seq(1,0.1, length.out=5)

Y<-drop(X%*%B) +rnorm(3)


fit.1<-lm(Y~X)  #생략

solve(t(X)%*%X) #생략


G.net<-glmnet(X,Y,family="gaussian",alpha=0,standardize=F)


#알파가0이면 릿지, 1이면 라쏘???



rbind(as.vector(G.net$a0),as.matrix(G.net$beta))


########################################

X<-matrix( rnorm(1500), ncol=50)

B<-seq(1,0.1, length.out=50)

Y<-drop(X%*%B) +rnorm(30)




G.net.cv<-cv.glmnet(X,Y,family="gaussian",alpha=0,standardize=FALSE)


########################################


X<-matrix( rnorm(500), ncol=10)

B<-seq(1,0.1, length.out=10)

Y<-drop(X%*%B) +rnorm(50)




fit.1<-lm(Y~X)

fit.aic<-stepAIC(fit.1,direction="forward")


####################################




X0<-matrix( rnorm(500), ncol=10)

B<-seq(1,0.1, length.out=10)

Y0<-drop(X0%*%B) +rnorm(50,0.2)


#LASSO

G.net.cv<-cv.glmnet(X0,Y0,family="gaussian",alpha=0,standardize=FALSE)


LASSO<-sum( ( Y0-cbind(1,X0)%*%as.matrix(coef(G.net.cv)) )^2)


#OLS

Beta<-coef(summary(lm(Y~X)))[,1]

OLS<-sum((Y0-cbind(1,X0)%*%Beta)^2)








'프로그래밍, 통계학 > R(데이터마이닝)' 카테고리의 다른 글

14.6.5실습  (0) 2014.06.05
14.6.3 실습  (0) 2014.06.03
14.5.27, LASSO, RIDGE  (0) 2014.05.27
14.5.22 실습  (0) 2014.05.22
14.5.8 데이터마이닝 / 디시젼트리  (0) 2014.05.08
블로그 이미지

테시리

,