set.seed(1617)
genotipo = gl(n=3,k=20, length = 60, labels = c("pastusa", "capiro", "criolla"))
rto=rnorm(n=60, mean=3,sd=0.2)
rto=round(rto,2)
df=data.frame(rto, genotipo)
library(DT)
datatable(df)

Resumen estadistico

summary(df$rto)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   2.430   2.837   2.920   2.957   3.078   3.390
summary(df$genotipo)
## pastusa  capiro criolla 
##      20      20      20
library(psych)
psych::describeBy(x=df$rto,group=df$genotipo)
## 
##  Descriptive statistics by group 
## group: pastusa
##    vars  n mean   sd median trimmed  mad  min  max range skew kurtosis   se
## X1    1 20 2.96 0.21   2.93    2.95 0.16 2.64 3.39  0.75 0.47    -0.84 0.05
## ------------------------------------------------------------ 
## group: capiro
##    vars  n mean   sd median trimmed  mad  min  max range  skew kurtosis   se
## X1    1 20    3 0.22      3    3.03 0.19 2.43 3.31  0.88 -0.67     0.09 0.05
## ------------------------------------------------------------ 
## group: criolla
##    vars  n mean   sd median trimmed  mad  min  max range skew kurtosis   se
## X1    1 20 2.91 0.18   2.86     2.9 0.16 2.55 3.35   0.8 0.52    -0.11 0.04
# cv_a=(sd/Media)*100
#cv_b=(sd/Media)*100