私は 2 つの data.frames を持っています。そのうちの 1 つには、3 通で行われた多くの実験の特定の順序が含まれています (DF1 設計テーブル)。もう 1 つは、これらの実験の結果を含みます (3 通の DF2 結果テーブル)。最初のデータフレームには実験のランダム化された順序があり、結果テーブルには異なる順序があります。
DF1 の最初の 6 列には、温度、試薬当量などの実験の要因が含まれています。結果テーブル DF2 にも、同じ 6 列と、実験の結果 (収率など) を含む列があります。 、各種試薬の変換 etc ...
テーブルは行数によって異なります。結果テーブルの行数は、設計テーブルよりも 3 行少なくなります。
計画表の実験パラメーターが実験表の適切な結果と一致するように、これらの 2 つの表を結合して計画に結果を添付するにはどうすればよいですか。
DF1
T1 A1 B1
T2 A1 B1
T1 A2 B1
T2 A2 B1
T1 A1 B2
T2 A1 B2
T1 A2 B2
T2 A2 B2
しかし三重に。
DF2
T1 A2 B2 1
T1 A2 B1 3
T2 A2 B1 3
T1 A1 B1 1
T2 A1 B2 2
T2 A2 B2 2
T2 A1 B1 2
再び 3 通で、行が 1 つ少ないことに注意してください。表示されている列よりも多くの結果列があることに注意してください。
このすべての作業の要点について: パッケージ RcmdrPlugin.DoE を実際のデータに適用できるかどうかを調べています。
私が試したことについては...まあ、ロジック関数でsapply、cbind、ifelseを使用することを考えました
sapply(
DF3 <- ifelse( DF1[,1] == DF2[,1] | DF1[,2] == DF2[,2] | DF2[,3] == DF2[,3],
cbind(DF1, DF2[,3]), NA)
)
このコードの NA に問題があります。しかし、NA にたどり着く前に、引数 'FUN' is missing エラーがあることがわかりました。
私は的外れであるか、答えに非常に近いと思いますが、どちらかです。誰かが私を正しい方向に向けることができますか?
編集...両方のdata.framesに共通する見出しをA、B、C、およびDに変更した7行のデータのサンプル。
run.no run.no.std.rp Block.ccd A B C D
C0.17 1 C0.17 0 400 147.5 5 2.675
C0.7 2 C0.7 0 450 120.0 2 4.000
C0.6 3 C0.6 0 350 175.0 2 4.000
C0.3 4 C0.3 0 450 120.0 8 4.000
C0.4 5 C0.4 0 350 120.0 8 4.000
C0.16 6 C0.16 0 350 120.0 2 1.350
C0.15 7 C0.15 0 450 120.0 2 1.350
もう一方の data.frame には、見出し A、B、C、および D と、収量、変換、およびその他の結果を含む列があります。最初の data.frame は、最後にタグ付けされた yield などで示されているとおりにする必要があります。