2017-01-16 9 views
-1

は私がgroup <- c("A0", "A1", ..., "A100")その後、getValue(A1 - A0, ..., A100 - A0)Rの関数にパラメータを再帰的に渡しますか?

を持っている場合、私はどのように電話交換知っていただきたいと思います

getValue(A1 - A0, A2 - A0, A3 - A0)その後、getValue(A1 - A0, A2 - A0)

group <- c("A0", "A1", "A2", "A3")、その後、その後getValue(A1 - A0)

group <- c("A0", "A1", "A2")

group <- c("A0", "A1")を想定しますcallygroupの値を手動で1つずつ書き込むのではなく、上記の3つの例のようにgetValue()に渡しますか?

例えば、私はgroup <- c("A0", "A1", ..., "A1000")を持っています、これらの値をgetValue()の関数に渡す方法はありますか?

ありがとうございました。

+0

「A0」、「A1」とは何ですか?文字を引くことはできません。 – Psidom

+0

'getValue(Map(\' - \ '、mget(group [-1])、mget(group [1])))'?あなたはあなたの例を[再現可能]にするべきです(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example#5963610)。 – alistaire

+0

私はこの関数 'makeContrasts {limma}'を学びます。今私は 'コントラスト'の議論が同じことをすることができることを知っている – BioChemoinformatics

答えて

0

あなたが興味があるだけparse

group <- paste0("A", seq_len(101)-1) 
cmdstr <- paste0("getValue(", 
    paste(paste(group[-1], group[1], sep=" - "), collapse=", "), 
    ")") 
cmdstr 
eval(parse(text=cmdstr)) 

evalを経由して非標準的な評価を使用する場合があります、理由のgetValue機能ではなく、リストを取り込むよりも変数の数の増加を必要としていますか?

+0

感謝@ chinsoon12。あなたの答えは私の問題を解決することができます。実際、私はこの関数 'makeContrasts {limma}'を学びます。今私は 'contrasts'引数が同じことをすることができることを知っています – BioChemoinformatics

+0

' eval(parse()) '非常に良い。 – BioChemoinformatics

関連する問題