You don't want to 'aggregate strings', you want to aggregate numerics 'by' string variables. Here:
R> xx = data.frame(a=sample(letters[1:3], 10, TRUE),
b=sample(LETTERS[1:3], 10, TRUE),
c=runif(10))
R> xx
a b c
1 b C 0.7094221
2 c B 0.2718095
3 c B 0.8844701
4 b C 0.9270141
5 b C 0.8243021
6 a A 0.3649902
7 a B 0.9763228
8 a A 0.8904676
9 b C 0.8640352
10 a A 0.7931683
R> aggregate(c ~ a + b, data=xx, FUN=sum)
a b c
1 a A 2.0486261
2 a B 0.9763228
3 c B 1.1562796
4 b C 3.3247736