私は関数を使ってRで簡単なタスクを自動化しようとしています。 C
は、文字変数のリストです。 mydata
- はデータセットです。関数の入力として文字列のリストを渡す
基本的には、ベクトルの各文字列に、関数への入力としてC
を与える必要があります。
セット:
mydata <- structure(list(a = c(1L, 1L, 1L, 1L, 0L, 0L, 1L, 0L), b = c(4L,3L, 1L, 2L, 1L, 5L, 2L, 2L), c = c(1L, 1L, 1L, 1L, 1L, 1L, 1L,1L), d = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), t = c(42L, 34L, 74L,39L, 47L, 8L, 36L, 39L), s = c(0L, 0L, 0L, 0L, 0L, 1L, 0L, 0L)), .Names = c("a", "b", "c", "d", "t", "s"), row.names = c(NA,8L), class = "data.frame")
コード:
c<-c("a","b","c","d")
plot<-function()
for (i in c)
{
fit<-survfit(Surv(s,t)~paste(i), dat=mydata)
ggsurvplot(fit, pval = TRUE)
}
plot()
Iは、次のエラー対向M:私は同様に定式を試みた
Error in model.frame.default(formula = Surv(mydata$s, mydata$t) ~ paste(i), : variable lengths differ (found for 'paste(i)')
:
プロットを用-function() (I c)において {survfit(更新(Surv(S、T)〜。、再公式(I))、データ= MYDATA) ggsurvplot(フィット、PVAL = TRUE)
} プロット()
が、このコードは、このエラーを与える:
Error in reformulate(i) : object 'i' not found
このコードを動作させるために、任意の助けを?
ありがとうございます。
サンプル入力データで何らかの[再現可能な例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)を提供すると、助けが簡単になります実際にコードを実行してテストすることができます。コメントのために – MrFlick
感謝します。サンプル入力データが提供されました – riz