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:
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".
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
C'est pourquoi je voulais utiliser la fonction tapply de la manière suivante:
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 Resultat<-tapply(as.character(donnees$ATG), donnees$Serum, FUN=paste)
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
3
4
5
6 Resultat $`1` [1] "A1,A2" "B3" $`2` [1] "C4,C5,C1" "D3"
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
Partager