Skip to content
Prev 11830 / 15380 Next

[R-es] Promedio elementos vector

Hola Manuel,

No había visto que el resultado era una matriz traspuesta...
He modificado el código para corregirlo y para obtener un resultado con 5
decimales.

No se puede usar la función "rowsum()" porque es una función para calcular
sumas teniendo un criterio de agrupación que en este caso, no existe.
Tampoco la alternativa de "rowSums()" funcionaría porque trabaja sobre
data.frames y en la función solo se calcula la suma de una fila... Así que
en este caso, dejo el cálculo de la función como estaba inicialmente.

#------------------------------
datIn <- read.table("ContaC.csv", header = TRUE, sep =",", as.is = TRUE)
datIn$X <- NULL

myfun <- function(x) {
  val_sum <- sum(x)
  x_avg <- round(x/val_sum,5)
  return(x_avg)
}

datOut <- apply(datIn, 1, myfun)
datEnd <- as.data.frame(t(datOut))
#-----------------------------

Saludos,
Carlos Ortega
www.qualityexcellence.es




El 15 de agosto de 2017, 4:19, Manuel Máquez <manuelmx11 en gmail.com>
escribió: