我正在尝试将数据框转换为另一个数据框,请参见下面的示例:
> start = data.frame(Aa = c('A','A','A','A','a','a','a','a'),Bb = c('B','B','b','b','B','B','b','b'),Cc = c('C','c','C','c','C','c','C','c'),v=c(1,2,3,4,5,6,7,8))
> start
Aa Bb Cc v
1 A B C 1
2 A B c 2
3 A b C 3
4 A b c 4
5 a B C 5
6 a B c 6
7 a b C 7
8 a b c 8
我想要一个像这样的数据框:
1 A B 3
2 A b 7
3 a B 11
4 a b 15
5 B C 6
6 B c 8
7 b C 10
8 b c 12
9 A C 4
10 A c 6
11 a C 12
12 a c 14
计算第 1 行是因为我们有 ABC -> 1 和 ABc -> 2 所以 AB -> 3
事实是我可以想象一个在列上有一些 for 循环的解决方案,但我需要它来节省时间,我可以有 100,000 行和多达 100 列,所以我需要一些快速的东西,而且我不认为 for循环在 R 中非常有效。
你有什么想法?
谢谢!