2016-04-22 8 views
0

glmnetを使用して係数パスのプロットを作成するとき、プロットの上の軸を削除したいと思います。プロットglmnetの上軸を削除

どのようにこの軸を削除しますか?私は、ウェブ上でこのおもちゃの例を見つけました:

library(glmnet) 
age <- c(4,8,7,12,6,9,10,14,7) 
gender <- c(1,0,1,1,1,0,1,0,0) ; gender<-as.factor(gender) 
bmi_p <- c(0.86,0.45,0.99,0.84,0.85,0.67,0.91,0.29,0.88) 
m_edu <- c(0,1,1,2,2,3,2,0,1); m_edu<-as.factor(m_edu) 
p_edu <- c(0,2,2,2,2,3,2,0,0); p_edu<-as.factor(p_edu) 
f_color <- c("blue", "blue", "yellow", "red", "red", "yellow", "yellow", "red", "yellow") 
asthma <- c(1,1,0,1,0,0,0,1,1) 
f_color <- as.factor(f_color) 
xfactors <- model.matrix(asthma ~ gender + m_edu + p_edu + f_color)[,-1] 
x <- as.matrix(data.frame(age, bmi_p, xfactors)) 
glmmod<-glmnet(x,y=as.factor(asthma),alpha=1,family='binomial') 
plot(glmmod,xvar="lambda", axes=FALSE) 
+0

それは場合有用であるスイッチをオフしてくださいここで再現可能なサンプルを提供することができます。どのコードを使用しましたか、どのプロット関数を参照していますか? – Laterow

+0

上記を参照してください。ありがとう。 – milan

答えて

1

この不要な軸は、私が推測するaxis機能、で作られています。この関数をもう一度使って、それをカバーすることができます。トリックは以下の通りです:

1)目盛りを描く点が多いシーケンスを作成します。

2)それらが大きく())上方

3を延長軸

4)白色を変化幅を拡大し、ラベル

plot(glmmod, xvar = "lambda", axes = F, xlab = "", ylab = "") 
axis(side = 3, 
    at = seq(par("usr")[1], par("usr")[2], len = 1000), 
    tck = -0.5, 
    lwd = 2, 
    col = "white", 
    labels = F) 
関連する問題