Salut, je voudrais agréger plusieurs colonnes.agréger les colonnes par caractère
d <- structure(list(Gene = structure(1:3, .Label = c("k141_20041_1",
"k141_27047_2", "k141_70_3"), class = "factor"), phylum = structure(c(1L,
1L, 1L), .Label = "Firmicutes", class = "factor"), class = structure(c(1L,
1L, 1L), .Label = "Bacillales", class = "factor"), order = structure(c(1L,
1L, 1L), .Label = "Bacilli", class = "factor"), family = structure(c(1L,
1L, 1L), .Label = "Bacillaceae", class = "factor"), genus = structure(c(1L,
1L, 1L), .Label = "Bacillus", class = "factor"), species = structure(c(1L,
1L, 2L), .Label = c("Bacillus subtilis", "unknown"), class = "factor"),
SampleA = c(0, 0, 0), SampleB = c(0, 0, 0), SampleCtrl = c(3.98888888888889,
11.5555555555556, 3.35978835978836)), .Names = c("Gene",
"phylum", "class", "order", "family", "genus", "species", "SampleA",
"SampleB", "SampleCtrl"), row.names = c(21918L, 40410L, 40857L
), class = "data.frame")
Ce dans la trame de données d'entrée pour agréger
Gene phylum class order family genus species SampleA SampleB
k141_20041_1 Firmicutes Bacillales Bacilli Bacillaceae Bacillus Bacillus subtilis 0 0
k141_27047_2 Firmicutes Bacillales Bacilli Bacillaceae Bacillus Bacillus subtilis 0 0
k141_70_3 Firmicutes Bacillales Bacilli Bacillaceae Bacillus unknown 0 0
SampleCtrl
3.99
11.56
3.36
Ce que je veux à la fin est une ligne unique avec toutes les colonnes. Dans ce cas, cela ressemblerait à ceci (nous pouvons supprimer la colonne du gène).
phylum class order family genus species SampleA SampleB SampleCtrl
Firmicutes Bacillales Bacilli Bacillaceae Bacillus Bacillus subtilis 0 0 15.6
Firmicutes Bacillales Bacilli Bacillaceae Bacillus Bacillus Unknown 0 0 3.36
Notez que c'est un exemple très simple. J'ai 20 échantillons et plus de 500 espèces dans la base de données originale.
Je veux regrouper toutes les colonnes d'échantillons (pas seulement la colonne samplectrl). Ce n'était pas clair à partir de ma question. Cet exemple aggreagate seulement la colonne Samplectrl. J'ai plus de 20 colonne, dois-je les énumérer tous dans un tel cas ?? – david
@david J'ai édité ma réponse. SampleA et SampleB sont maintenant additionnés car ils sont également numériques. –
Grands travaux parfaits. Merci beaucoup – david