-1
我有兩個以下數據幀,第一個表示頻率,第二個表示單個事件。我試圖添加一列到合併數據的第一個到第二個數據的第二個數據,在行/列的條件。合併重新整形的數據幀並根據類別複製值
event a b c
w 0 1 3
x 3 4 0
y 6 0 4
z 0 0 4
event person
w b
w b
x a
x b
x b
z c
z a
y b
y c
y a
y c
counts <- data.frame (event= c("w", "x", "y", "z"), a= c(0, 3, 6, 0), b=c(1, 4, 0, 0), c=c(3, 0, 4, 4))
cases <- data.frame(event=c("w", "w", "x", "x", "x", "z", "z", "y", "y", "y", "y"),
person=c("b", "b", "a", "b", "b", "c", "a", "b", "c", "a", "c"))
目標:
case person freq
w b 1
w b 1
x a 3
x b 4
x b 4
z c 0
z a 0
y b 0
y c 4
y a 6
y c 4
但沒有成功。我能夠使用reshape
包生成第一個DF頻率,但無法弄清楚如何組合它們。
試過'merge'? – TheComeOnMan
@Codoremifa:在這個例子中,我沒有看到使用'merge'的策略。謹慎發佈你在想什麼? –
我希望我能正確理解這個問題 - 'library(reshape2); 重熔< - 熔化(計數,id.vars =「事件」); colnames(計數)< - c(「event」,「person」,「freq」); merge(cases,countmelted,all.x = TRUE,by = c(「event」,「person」));' – TheComeOnMan