Dada una trama de datos de muestra:Calcular fila significa el subconjunto de columnas
C1<-c(3,2,4,4,5)
C2<-c(3,7,3,4,5)
C3<-c(5,4,3,6,3)
DF<-data.frame(ID=c("A","B","C","D","E"),C1=C1,C2=C2,C3=C3)
DF
ID C1 C2 C3
1 A 3 3 5
2 B 2 7 4
3 C 4 3 3
4 D 4 4 6
5 E 5 5 3
¿Cuál es la mejor manera de crear una segunda trama de datos que contendría la columna de la ID
y la media de cada fila? Algo como esto:
ID Mean
A 3.66
B 4.33
C 3.33
D 4.66
E 4.33
algo similar a:
RM<-rowMeans(DF[,2:4])
Me gustaría mantener los medios alineados con sus ID
's.
Gracias. También tenga en cuenta de 'clase (DF)' que no _libere_ 'data.frame', en el sentido de que cualquier función que busque un objeto' data.frame' debería aceptar 'DF' después de' setDT' (especialmente ahora que 'data.table' está en el lado maduro) – MichaelChirico
¿Qué sucede si, en su lugar, quiero indicar la fila entre C2 y C3 solamente? – user3841581
Luego puede usar 'DF [,. (Mean = rowMeans (.SD)), por = ID, .SDcols = c (" C2 "," C3 ")]'. El argumento '.SDcols' determina qué columnas quiere incluir en' .SD'. @ user3841581 – BenBarnes