私はRを初めて使うので、打ち切りデータの相関を見つけるために生存分析を使用しようとしています。 xデータはプロトスターのエンベロープ質量です。 yデータは観測された分子線の強度であり、いくつかの値は上限である。データは次のとおりです。私はデータをプロットしてたときに、しかしRサバイバルサプレグは良いフィットをもたらしていません
summary(modeldata)
Call:
survreg(formula = Surv(y, censor) ~ x, dist = "exponential",
control = list(maxiter = 90))
Value Std. Error z p
(Intercept) -0.114 0.568 -0.20 0.841
x 0.153 0.110 1.39 0.163
Scale fixed at 1
Exponential distribution
Loglik(model)= -6.9 Loglik(intercept only)= -9
Chisq= 4.21 on 1 degrees of freedom, p= 0.04
Number of Newton-Raphson Iterations: 5
n= 11
:
x <- c(17.299, 4.309, 7.368, 29.382, 1.407, 3.404, 0.450, 0.815, 1.027, 0.549, 0.018)
y <- c(2.37, 0.91, 1.70, 1.97, 0.60, 1.45, 0.25, 0.16, 0.36, 0.88, 0.42)
censor <- c(0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1)
は、私は次のような結果を与えるRサバイバルライブラリ
modeldata<-survreg(formula=Surv(y,censor)~x, dist="exponential", control = list(maxiter=90))
から関数survregを使用しています次の方法を用いたモデル:
plot(x,y,pch=(censor+1))
xnew<-seq(0,30)
model<-predict(modeldata,list(x=xnew))
lines(xnew,model,col="red")
私はこれを得るplot of x and y data; triangles are censored data
私は間違ってどこに行くのか分からない。私はさまざまなディストリビューションを試みましたが、すべて同じような結果をもたらします。
x <- c(1.14, 1.14, 1.19, 0.78, 0.43, 0.24, 0.19, 0.16, 0.17, 0.66, 0.40)
結果が正しく解釈されているかどうかもよく分かりませんが、他のデータを使用すると同じことが言えます。
同じ方法(例:https://stats.idre.ucla.edu/r/examples/asa/r-applied-survival-analysis-ch-1/)を使用して他の例を試してみましたが、これまでのところわかります。
だから私の質問は以下のとおりです。
私は、データを当てはめるための正しい機能を使用していますか?そうでない場合は、どちらが適していますか?
正しい関数であれば、モデルがデータに近似しないのはなぜですか?それはプロットと関係がありますか?
ありがとうございました。関係の「形状」は下向き凹型に見えるので、私は~ log(x)
フィットを推測しているだろう
データが切り捨てられていると言うより正確だと思います。そして、分布は指数関数的ではなく対数的に見えます。 –