Bonjour à tous,
j'ai un souci dans le format de sortie de la fonction tapply lorsque je veux l'utiliser avec la fonction paste.

Voici mes données:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
donnees<-as.data.frame(matrix(c("A1,A2","B3","C4,C5,C1","D3",1,1,2,2),ncol=2))
 
> colnames(donnees)<-c("ATG","Serum")
 
> donnees
       ATG Serum
1    A1,A2     1
2       B3     1
3 C4,C5,C1     2
4       D3     2
Pour chaque serum je voudrais concaténer les différentes valeurs de la variable ATG, c'est à dire que pour le serum 1 je voudrais en retour la valeur ATG "A1,A2 B3".

C'est pourquoi je voulais utiliser la fonction tapply de la manière suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Resultat<-tapply(as.character(donnees$ATG), donnees$Serum, FUN=paste)
Mais le Résultat n'est pas celui escompté car il s'agit d'une liste de vecteurs à 2 éléments Exemple: "A1,A2" et "B3" pour le serum 1 et non une liste de chaine type "A1,A2 B3" pour le serum 1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Resultat
$`1`
[1] "A1,A2" "B3"   
 
$`2`
[1] "C4,C5,C1" "D3"
Or la fonction paste marche bien quand je l'utilise de la manière suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
paste(donnees$ATG[1],donnees$ATG[2])
[1] "A1,A2 B3"

Je suis un peu perdu, et je ne sais pas si je suis très clair.

Merci d'avance,
Benoît