R/table_mean.R

Defines functions tabledesc

#' Table descritive analysis
#' @description Function for generating a data.frame with averages or other descriptive measures grouped by a categorical variable
#' @author Gabriel Danilo Shimizu
#' @param data data.frame containing the first column with the categorical variable and the remaining response columns
#' @param fun function of descriptive statistics (default is mean)
#' @export
#' @example
# dados=data.frame(trat=rep(paste("T",1:20),e=5),
#                  x1=rnorm(100,10,1),
#                  x2=rnorm(100,10,1),
#                  x3=rnorm(100,10,1),
#                  x4=rnorm(100,10,1))
# tabledesc(dados)


tabledesc=function(data,fun=mean){
  dados=data[,-1]
  trat=as.vector(unlist(data[,1]))
  n=nlevels(as.factor(trat))
  nr=ncol(dados)-1
  medias=data.frame(matrix(1:(n*nr),ncol = nr))
  for(i in 1:ncol(dados)){
    medias[,i]=tapply(as.vector(unlist(dados[,i])), trat, fun)[unique(trat)]}
  colnames(medias)=colnames(dados)
  medias=data.frame(GEN=unique(trat),medias)
  print(medias)}
AgronomiaR/IS documentation built on Jan. 31, 2021, 1:59 a.m.