関数に文字列入力を使用しようとしましたが、Rで使用可能な形式に変換する必要があります。R:関数の入力から関数の式の一部に文字列を変換する
私は以下の機能を持っています:
これは問題なく動作します。しかし、私は時には一つの関数で異なる式を使いたいので、私の "Expression"は"A * B * C"
または"A * C"
になります。私は使用しようとしました:
MyFunction <- function(MyDataFrame, Expression = "A * B * C"){
Fit <- aov(VariableA ~ Expression, MyDataFrame)
model = lme(VariableA ~ Expression, random=~1| Sample, method="REML", MyDataFrame)
return(anova(model))
}
これは動作しません。助言がありますか?
'as.formula(paste0(「VariableA〜」、式))' – Lamia
使用してみてください:そうは次のようにあなたがやろうとしているように見えるものに基づいて、私はおそらく私の機能を設定します文字列ではなく式 'Expression =〜A * B * C'を使用し、関数内で' lme(update(VariableA〜。、expression)) 'を使用します。 'update'の呼び出しはあなたの数式' VariableA〜.'を 'VariableA〜A * B * C'に更新します – yeedle