1
我正在嘗試查找與參與者實驗相關的值,並將他們添加到每個參與者參與每個實驗中。R匹配列名稱和拉值
如果參與者在A列中有1,這意味着他們暴露於實驗A.然後我想拉入與實驗A相關的3個值,並且在每個參與者的每次實驗暴露中開始累加這些值。
DF:
Participant A B
1 1 1
2 1 0
3 0 1
我的查詢數據幀:
Experiment Val1 Val2 Val3
A 1.1 1.2 1.3
B 1.0 1.1 1.5
對於DF的結果:
Id A B Val1 Val2 Val3
1 1 1 2.1 2.3 2.8
2 1 0 1.1 1.2 1.3
3 0 1 1.0 1.1 1.5
我的真實數據集具有實驗64分的情況下,7000人蔘加。我的這是什麼看起來像速記是:
對於每一行, 對於每一列,
如果列i = 1,比賽COLUMNNAME查找$實驗
添加VAL1:在VAL3臨時陣列
然後臨時數組粘貼到DF
任何幫助,將不勝感激!我不確定這是匹配還是合併功能。
數據
df = structure(list(Participant = 1:3, A = c(1L, 1L, 0L), B = c(1L,
0L, 1L)), .Names = c("Participant", "A", "B"), row.names = c(NA,
-3L), class = "data.frame")
lookup = structure(list(Experiment = c("A", "B"), Val1 = c(1.1, 1), Val2 = c(1.2,
1.1), Val3 = c(1.3, 1.5)), .Names = c("Experiment", "Val1", "Val2",
"Val3"), row.names = c(NA, -2L), class = "data.frame")
第二行可能是'cbind(DF [1 ],結果)' – Frank