框架有code1
、code2
、code3
列等,其中存储有代码.对于每个代码,都有一列使用天数为days_used1
、days_used2
、days_used3
等.我想获得一个收件箱,其中包括每个代码的一列,其中包含code
中每个值的days_used总和.
data.frame(ID = c(1, 2, 3, 4, 5,6),
code1 = c('D', 'D', 'C', 'A', 'G', "A"),
quantity1 = c(10, 10, 15, 30, 20, 10),
dose1 = c(5, 5, 15, 0.5, 2, 10),
days_used1 = c(NA, NA, 90, 63, 20, 50),
code2 = c('A', 'H', 'D', 'G', 'A', "A"),
quantity2 = c(5, 10, 10, 20, 20, 5),
dose2 = c(0.1, 15, 15, 7, 5, 12),
days_used2 = c(15, NA, NA, 50, 20, 10),
code3 = c('A', 'H', 'C', 'A', 'D', "D"),
quantity3 = c(10, 10, 15, 30, 20, 10),
dose3 = c(5, 5, 15, 0.5, 2, 10),
days_used3 = c(15, NA, NA, 50, 20, 10)
)
所以我想要一个像这样的藤壶:
data.frame(ID = c(1, 2, 3, 4, 5),
A= c(30, 0, 0, 20, 60),
D = c(0, 0, 0, 0, 20, 10),
C= c(0, 0, 90, 0, 20, 10),
G= c(0, 0, 0, 50, 20, 0),
H= c(0, 0, 0, 0, 0)
)
我真的不知道如何才能完成这件事.我try 了下面例子的方法,但这显然行不通
ifelse(test[paste0("code",c(1:3))] == "A",
sum(test[paste0("code",c(1:3)) == "A"]+1),
0)
code1 code2 code3
[1,] 0 0 0
[2,] 0 0 0
[3,] 0 0 0
[4,] 0 0 0
[5,] 0 0 0
[6,] 0 0 0