Reputation: 2385
In my data frame below I would like to take the mean of RowMeansCollapsed
and RowStDev
for rows where RowNamesLengthCollapsed
is the same. THis will produce an output data frame with only unique RowNamesLengthCollapsed
.
> head(RowMeans_Names)
RowNamesCollapsed RowMeansCollapsed RowStDev RowNamesLengthCollapsed
1 GCATTGGTGGTTCAGTGGTAGAATTCTCGCCT 38.2083333333333 140.255174717683 32
2 AGGTTCCGGATAAGTAAGAGCC 3.5625 6.62977732419582 22
3 TCTTAACCCGGACCAGAAACTA 3.25 7.10226057415228 22
4 CTGACCTATGAATTGACAGCC 29.1875 110.206439061093 21
5 TACCCTGTAGAACCGAATTTGT 46.6041666666667 161.866772973895 22
6 GTTTCCGTAGTGTAGTGGTTATCACGTTCGCCT 41.96875 148.825680659234 33
Upvotes: 0
Views: 41
Reputation: 1022
Maybe this might help you .
df2 <- aggregate(cbind(RowMeansCollapsed, RowStDev) ~ RowNamesCollapsed, df, mean)
Upvotes: 1
Reputation: 545508
Using ‹dplyr›, this is trivial:
RowMeans_Names %>%
group_by(RowNamesCollapsed) %>%
summarize(RowMeansCollapsed = mean(RowMeansCollapsed),
RowStDev = mean(RowStDev),
RowNamesLengthCollapsed = first(RowNamesLengthCollapsed))
Upvotes: 2