I have a data.frame with six samples in two triplicates. I would like to calculates for each group the mean of the this group into a new column. What is the best way to do this? My data looks like that
head(p767)
sgrna p767.AM_1 p767.AM_2 p767.AM_3 p767.MM_1 p767.MM_2 p767.MM_3
1 Control-104-KO-64-F 758 682 713 1867 1840 1251
2 Control-110-KO-29-F 674 561 642 1706 1737 1141
3 Control-112-KO-65-F 584 518 495 1328 1448 1012
4 Control-125-KO-31-F 565 462 569 1345 1258 856
5 Control-128-KO-136-F 463 452 424 1253 1258 721
6 Control-132-KO-57-F 854 698 755 1974 1977 1326
I would like to a new data.frame with the mean values calculated as such:
head(p767.m)
p767.AM p767.MM
Control-104-KO-64-F 717.6667 1652.667
Control-110-KO-29-F 625.6667 1528.000
Control-112-KO-65-F 532.3333 1262.667
Control-125-KO-31-F 532.0000 1153.000
Control-128-KO-136-F 446.3333 1077.333
Control-132-KO-57-F 769.0000 1759.000
Below is the way to read it into R. I would appreciate the help.
Thanks
structure(list(sgrna = c("Control-104-KO-64-F", "Control-110-KO-29-F",
"Control-112-KO-65-F", "Control-125-KO-31-F", "Control-128-KO-136-F",
"Control-132-KO-57-F"), p767.AM_1 = c(758L, 674L, 584L, 565L,
463L, 854L), p767.AM_2 = c(682L, 561L, 518L, 462L, 452L, 698L
), p767.AM_3 = c(713L, 642L, 495L, 569L, 424L, 755L), p767.MM_1 = c(1867L,
1706L, 1328L, 1345L, 1253L, 1974L), p767.MM_2 = c(1840L, 1737L,
1448L, 1258L, 1258L, 1977L), p767.MM_3 = c(1251L, 1141L, 1012L,
856L, 721L, 1326L)), row.names = c(NA, 6L), class = "data.frame")
I know it can be done with something like that:
but it would be nice to have a tidyer way of doing it.