我有以下数据框
a <- c(rep("CGR", 6), rep("AUS", 6), rep("ROW", 6) )
b <- c("AUT", "CH", "ROW", "ROW", "ROW", "ROW", "AUT", "CH", "ROW", "ROW", "ROW", "ROW", "AUT", "CH", "ROW", "ROW", "ROW", "ROW" )
v <- 1:18
category <- c("a", "b", "a", "a", "b", "b", "a", "b", "a", "a", "b", "b", "a", "b", "a", "a", "b", "b")
data.frame(a,b,v,category)
a b v category
1 CGR AUT 1 a
2 CGR CH 2 b
3 CGR ROW 3 a
4 CGR ROW 4 a
5 CGR ROW 5 b
6 CGR ROW 6 b
7 AUS AUT 7 a
8 AUS CH 8 b
9 AUS ROW 9 a
10 AUS ROW 10 a
11 AUS ROW 11 b
12 AUS ROW 12 b
13 ROW AUT 13 a
14 ROW CH 14 b
15 ROW ROW 15 a
16 ROW ROW 16 a
17 ROW ROW 17 b
18 ROW ROW 18 b
我想要做的是创建一个新的数据框或折叠现有的数据框,当列向量“b”等于“行”时,我想通过列向量“类别”的类别对“v”中的值求和
预期结果应如下所示:
aa bb vv category
1 CGR AUT 1 a
2 CGR CH 2 b
3 CGR ROW 7 a
4 CGR ROW 11 b
5 AUS AUT 7 a
6 AUS CH 8 b
7 AUS ROW 19 a
8 AUS ROW 23 b
9 ROW AUT 13 a
10 ROW CH 14 b
11 ROW ROW 31 a
12 ROW ROW 35 b
有人可以有效地执行此任务吗?