Genere una muestra de tamaño 120 de la distribucion normal con media 5, desviacion estandar 0.85. Use solo dos numeros decimales (rnorm())

set.seed(2075)
Biomasa_gramos = c(round(rnorm(120,5,0.85),2))
head(Biomasa_gramos)
## [1] 3.99 5.78 4.04 4.10 6.02 4.67

Genere una muestra de tamaño 120 de la distribucion binomi con 0.8 (probabilidad), 20 (ensayos independientes) . Use solo dos numeros decimales (rbinom())

set.seed(2075)
Flores.r=c(round(rbinom(120,size = 20,prob = 0.8),2))
head(Flores.r)
## [1] 18 12 14 18 18 14

Genere una muestra de tamaño 120 de la distribucion Poisson con paŕametro 10.5(media) (rpois()

set.seed(2075)
Flores.d=c(round(rpois(120,n = 10.5),2))
head(Flores.d)
## [1] 106 104 108 121 116 123

Genere una muestra con reemplazo de tamano 120 de una secuencia de 300 numeros (sample.int())

set.seed(2075)
Hojas.d =sample.int(n=300,size = 120,replace = T)
head(Hojas.d )
## [1]  26  44 216  73 166 203

Usando la librerıa purrr genere una muestra de la distribucíon de Bernoulli detamaño 120 y parametro 0.75 (probabilidad) (rbernoulli()) y cambie el FALSE (ausente) y el TRUE por (presente).

library(purrr)
set.seed(2075)
a = rbernoulli(n = 120,p = 0.75)
Plaga= ifelse(a== TRUE, "presente","ausente")
head(Plaga,10)
##  [1] "ausente"  "presente" "presente" "ausente"  "ausente"  "presente"
##  [7] "ausente"  "ausente"  "presente" "presente"

Genere tres niveles de un factor, cada uno con 40 datos y etiquetelos con (S) para identificar la planta (sana), (PA) para las plantas parcialmente afectadas y (MA) para las muy afectadas. Use la funci ́on (gl()).

Estatus= gl(3,40,120,labels = c("S","PA","MA"))
head(Estatus)
## [1] S S S S S S
## Levels: S PA MA

Genere dos niveles de un factor usando la distribuci ́on uniforme con paŕametros 0 y 1.2, ponga para cada datos a generar de los 120 la condicíon de si el ńumero generado es menor a 0.5, los etiquetamos como (FO) para asociarlo a fertilizacion organica, de lo contrario, use (FI) para asociarlo a fertilizaci ́on inorg ́anica. Use la funcion (runif()). Si lo desea use la funcion (ifelse()) o (if else()) para condicionar.

set.seed(2070)
datos=runif(120,0,1.20)
fertilizacion= ifelse(datos<0.5,"FO","FI")
dat= data.frame(datos,
                fertilizacion)
head(dat)
##        datos fertilizacion
## 1 0.24008254            FO
## 2 0.61643353            FI
## 3 0.30499858            FO
## 4 0.54575941            FI
## 5 0.04122079            FO
## 6 0.95228550            FI

Construya un marco de datos (data.frame()) o una tableta (tibble()) con todas la variables antes generadas y asigne repectivamente los nombres de variable: Biomasa(gramos), Flores.r (conteo de flores en tres ramas), Flores.d (conteo de flores desprendidas), Hojas.d (conteo de hojas desprendidas), Plaga , Estatus y Fertlizacion.Revise del objeto creado, su dimensi ́on (dim()), su estructura con (str()) o (glimpse()), la clase (class()), los nombres en las variables (names()), la presencia de faltantes (is.na())

total= data.frame("Biomasa(gramos)"=Biomasa_gramos,
                  "Flores.r"=Flores.r,
                  "Flores.d"=Flores.d,
                  "Hojas.d "=Hojas.d,
                  "Plaga"=Plaga,
                  "Estatus"=Estatus,
                  "fertilizacion"=fertilizacion)
head(total)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            3.99       18      106       26  ausente       S            FO
## 2            5.78       12      104       44 presente       S            FI
## 3            4.04       14      108      216 presente       S            FO
## 4            4.10       18      121       73  ausente       S            FI
## 5            6.02       18      116      166  ausente       S            FO
## 6            4.67       14      123      203 presente       S            FI
str(total)
## 'data.frame':    120 obs. of  7 variables:
##  $ Biomasa.gramos.: num  3.99 5.78 4.04 4.1 6.02 4.67 4.88 5.23 4.2 5.78 ...
##  $ Flores.r       : num  18 12 14 18 18 14 18 18 14 16 ...
##  $ Flores.d       : num  106 104 108 121 116 123 109 141 121 117 ...
##  $ Hojas.d.       : int  26 44 216 73 166 203 33 234 143 166 ...
##  $ Plaga          : chr  "ausente" "presente" "presente" "ausente" ...
##  $ Estatus        : Factor w/ 3 levels "S","PA","MA": 1 1 1 1 1 1 1 1 1 1 ...
##  $ fertilizacion  : chr  "FO" "FI" "FO" "FI" ...
class(total)
## [1] "data.frame"
colnames(total)
## [1] "Biomasa.gramos." "Flores.r"        "Flores.d"        "Hojas.d."       
## [5] "Plaga"           "Estatus"         "fertilizacion"
table(is.na(total))
## 
## FALSE 
##   840

Usando la informacion del punto anterior, Seleccione un subconjunto (el 75 % de las filas de todas las columnas) de todo el marco de datos o tableta. Use la funcion (samplen()) y asigne un valor faltante NA a dos variables cuantitativas cualesquiera del conjunto de datos muestreado. LLame tib.c al data.frame completo y tic.i al pequeno. Con estos dos data.frames resuelva los puntos que se presentas en los ejercicios posteriores.

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
set.seed(2075)
tib.c= total 
tib.i = sample_n(total,size = round(length(total$Plaga)*0.75),replace = T)
tib.i$Hojas.d.= ifelse(tib.i$Hojas.d.< 20,NA,
                       tib.i$Hojas.d.)
tib.i$Biomasa.gramos.= ifelse(tib.i$Biomasa.gramos.< 4,NA,
                       tib.i$Biomasa.gramos.)
table(is.na(tib.c))
## 
## FALSE 
##   840
head(tib.c)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            3.99       18      106       26  ausente       S            FO
## 2            5.78       12      104       44 presente       S            FI
## 3            4.04       14      108      216 presente       S            FO
## 4            4.10       18      121       73  ausente       S            FI
## 5            6.02       18      116      166  ausente       S            FO
## 6            4.67       14      123      203 presente       S            FI
table(is.na(tib.i))
## 
## FALSE  TRUE 
##   615    15
head(tib.i)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            4.81       17      116      178  ausente      MA            FI
## 2            4.63       15      123      115 presente       S            FI
## 3            5.30       20      117       47  ausente      PA            FO
## 4              NA       17      121      287  ausente      PA            FI
## 5            6.19       18      104      252  ausente      MA            FI
## 6            4.07       14      141      219 presente      MA            FI
  1. Seleccione una variable cualquiera con (select()) para tib.c
library(dplyr)
 tib.ip = dplyr::select(tib.i,Plaga)
 head(tib.ip)
##      Plaga
## 1  ausente
## 2 presente
## 3  ausente
## 4  ausente
## 5  ausente
## 6 presente
  1. Seleccione desde la tercera a la sexta variable con (select(:)) para tib.c
 tib.i36 = dplyr::select(tib.i,c(3:6))
 head(tib.i36)
##   Flores.d Hojas.d.    Plaga Estatus
## 1      116      178  ausente      MA
## 2      123      115 presente       S
## 3      117       47  ausente      PA
## 4      121      287  ausente      PA
## 5      104      252  ausente      MA
## 6      141      219 presente      MA

No seleccione desde la tercera a la sexta variable con (select(!(:))) para tib.c

tib.i_36 = dplyr::select(tib.i,c(3:6))
 head(tib.i_36)
##   Flores.d Hojas.d.    Plaga Estatus
## 1      116      178  ausente      MA
## 2      123      115 presente       S
## 3      117       47  ausente      PA
## 4      121      287  ausente      PA
## 5      104      252  ausente      MA
## 6      141      219 presente      MA

Seleccione las que no finalizan con .d usando (select(!ends with()))

tib.iend = dplyr::select(tib.i,!ends_with(".d"))
 head(tib.iend)
##   Biomasa.gramos. Flores.r Hojas.d.    Plaga Estatus fertilizacion
## 1            4.81       17      178  ausente      MA            FI
## 2            4.63       15      115 presente       S            FI
## 3            5.30       20       47  ausente      PA            FO
## 4              NA       17      287  ausente      PA            FI
## 5            6.19       18      252  ausente      MA            FI
## 6            4.07       14      219 presente      MA            FI

Seleccione las que comienzan con Fl usando (select(starts with()))

tib.istar = dplyr::select(tib.i,starts_with("Fl"))
 head(tib.istar)
##   Flores.r Flores.d
## 1       17      116
## 2       15      123
## 3       20      117
## 4       17      121
## 5       18      104
## 6       14      141
  1. Seleccione las que comienzan con F y terminan con .d usando (select(starts with()&ends with()))
tib.istarr = dplyr::select(tib.i,starts_with("Fl")&ends_with(".d"))
 head(tib.istarr)
##   Flores.d
## 1      116
## 2      123
## 3      117
## 4      121
## 5      104
## 6      141

Seleccione una variable cualquiera con (select()) para tib:c y agrupela por Estatus usando ( group by() )

var_estatus = dplyr::select(tib.i,c(Biomasa.gramos.,Estatus)) %>% 
group_by(Estatus) 
  head(var_estatus)
## # A tibble: 6 × 2
## # Groups:   Estatus [3]
##   Biomasa.gramos. Estatus
##             <dbl> <fct>  
## 1            4.81 MA     
## 2            4.63 S      
## 3            5.3  PA     
## 4           NA    PA     
## 5            6.19 MA     
## 6            4.07 MA

Guarde el resultado previo en la variable var estatus y ordene de mayor a menor por la misma variable anterior usando (arrange(desc(), .by group = T RUE)) para tib.c

var_estatus %>% 
  arrange(desc(Biomasa.gramos.),.by_group = T)
## # A tibble: 90 × 2
## # Groups:   Estatus [3]
##    Biomasa.gramos. Estatus
##              <dbl> <fct>  
##  1            7.27 S      
##  2            7.27 S      
##  3            7.03 S      
##  4            6.67 S      
##  5            6.13 S      
##  6            6.13 S      
##  7            6.02 S      
##  8            6.02 S      
##  9            6.02 S      
## 10            5.8  S      
## # … with 80 more rows

Filtre los datos que comienzan con Flores para el estatus muy afectadas (Filter(,) )

tib.if = filter(tib.i,Estatus== "MA") %>% 
  select(c(2,3,6))
 head(tib.if)
##   Flores.r Flores.d Estatus
## 1       17      116      MA
## 2       18      104      MA
## 3       14      141      MA
## 4       16      108      MA
## 5       16      109      MA
## 6       18      116      MA
  1. Filtre los datos para cuando la biomasa es superior a 5 gramos
tib.ib = filter(tib.i,Biomasa.gramos.>5)
head(tib.ib)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            5.30       20      117       47  ausente      PA            FO
## 2            6.19       18      104      252  ausente      MA            FI
## 3            5.73       14      108      108 presente      PA            FI
## 4            6.02       16      141      267 presente       S            FI
## 5            5.09       16      109       56 presente      MA            FI
## 6            5.33       18      123      151  ausente      MA            FO
  1. Filtre los datos para tener solo fertilizaci ́on se tienen plantas parcialmente afectadas y fueron tratadas con fertilizaci ́on org ́anica
tib.if= filter(tib.i,fertilizacion=="FO",Estatus=="PA")
head(tib.if)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            5.30       20      117       47  ausente      PA            FO
## 2            4.95       15      121      113 presente      PA            FO
## 3            6.05       16      141      255 presente      PA            FO
## 4            4.42       13      123      225 presente      PA            FO
## 5            5.30       20      117       47  ausente      PA            FO
## 6            4.04       16      106      105 presente      PA            FO
  1. Filtre los datos para tener solo fertilizaci ́on se tienen plantas parcialmente afectadas o fueron tratadas con fertilizaci ́on inorg ́anica
tib.ifo= filter(tib.i,fertilizacion=="FO"|Estatus=="PA")
tib.ifo[c(10:20),]
##    Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 10              NA       14      116      271 presente      PA            FI
## 11            5.33       18      123      151  ausente      MA            FO
## 12            4.60       11      108      211 presente       S            FO
## 13            5.92       15      117      281 presente      PA            FI
## 14            4.95       15      121      113 presente      PA            FO
## 15            5.23       18      141      234  ausente       S            FO
## 16            6.05       16      141      255 presente      PA            FO
## 17              NA       17      121      287  ausente      PA            FI
## 18            4.42       13      123      225 presente      PA            FO
## 19            4.69       15      117       81 presente      MA            FO
## 20              NA       17      121      287  ausente      PA            FI
  1. Filtre los datos de Flores desprendidas por presencia o ausencia de plaga para cuando el numero de flores desprendidas es mayor a su mediana
tib.im= filter(tib.i,Flores.d>median(Flores.d)& Plaga=="presente")
tib.im2= filter(tib.i,Flores.d>median(Flores.d)& Plaga=="ausente")
head(tib.im)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            4.63       15      123      115 presente       S            FI
## 2            4.07       14      141      219 presente      MA            FI
## 3            6.02       16      141      267 presente       S            FI
## 4            4.22       16      141      159 presente       S            FI
## 5            5.30       15      141      171 presente      MA            FI
## 6            6.02       16      141      267 presente       S            FI
head(tib.im2)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.   Plaga Estatus fertilizacion
## 1            5.30       20      117       47 ausente      PA            FO
## 2              NA       17      121      287 ausente      PA            FI
## 3              NA       18      121      100 ausente      PA            FI
## 4            5.33       18      123      151 ausente      MA            FO
## 5            5.33       18      123      151 ausente      MA            FO
## 6            5.23       18      141      234 ausente       S            FO
  1. Filtre los datos de una de las variables con datos faltantes por presencia o ausencia de plaga para cuando el valor de la variable con faltante es mayor a su mediana. Compare los resultados en los dos conjuntos de datos (completo o muestreado). Si encuentra diferencias en la mediana use median(, na.rm = TRUE)
tib.ihd= filter(tib.i,Hojas.d.>median(Hojas.d., na.rm
= TRUE)& Plaga=="presente")
head(tib.ihd)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            4.07       14      141      219 presente      MA            FI
## 2            6.02       16      141      267 presente       S            FI
## 3              NA       14      116      271 presente      PA            FI
## 4              NA       16      108      181 presente      MA            FO
## 5            4.98       16      108      221 presente       S            FI
## 6            5.30       15      141      171 presente      MA            FI
tib.chd= filter(tib.c,Hojas.d.>median(Hojas.d., na.rm
= TRUE)& Plaga=="presente")
head(tib.chd)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            4.04       14      108      216 presente       S            FO
## 2            4.67       14      123      203 presente       S            FI
## 3            5.78       16      117      166 presente       S            FO
## 4            5.36       16      108      229 presente       S            FO
## 5            7.27       17      123      264 presente       S            FO
## 6            4.60       11      108      211 presente       S            FO
  1. Seleccione dos variables cuantitativas y as ́ıgnelas a un vector con c(,) y nombrelo con v1. Ponga en otro vector dos valores numericos que sirvan de condicion a cada variable, por ejemplo, el cuartil inferior para una y el cuartil superior para la otra y llamelo v2. Usando ahora pipes, llame el data.frame completo y filtre usando el operador punto para seleccionar aquellos datos que superan respectivamente cada variable el valor de la condicion. Use ( v1 = c(); v2 = c();tib.c %>%f ilter(.data[[v1[[1]] > v2[[1]], .data[[v1[[2]] > v2[[2]]))
quantile(tib.c$Flores.r)
##   0%  25%  50%  75% 100% 
##   11   15   16   17   20
quantile(tib.c$Biomasa.gramos.)
##   0%  25%  50%  75% 100% 
## 2.07 4.37 4.95 5.58 7.27
v1 =c("Flores.r","Biomasa.gramos.")
v2= c(15,5.58)

tib.c %>% 
 filter( .data[[v1[[1]]]]  > v2[[1]],
         .data[[v1[[2]]]]  > v2[[2]])
##    Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1             6.02       18      116      166  ausente       S            FO
## 2             5.78       16      117      166 presente       S            FO
## 3             6.13       17      106       75 presente       S            FI
## 4             7.03       17      104       23 presente       S            FI
## 5             5.80       16      121      115 presente       S            FI
## 6             7.27       17      123      264 presente       S            FO
## 7             6.67       18      117      284  ausente       S            FO
## 8             6.02       16      141      267 presente       S            FI
## 9             6.12       17      106      199  ausente      PA            FO
## 10            5.70       16      123      238 presente      PA            FI
## 11            6.05       16      141      255 presente      PA            FO
## 12            5.63       17      108       16 presente      PA            FO
## 13            6.19       18      104      252  ausente      MA            FI
## 14            6.01       16      123      196 presente      MA            FI
## 15            6.98       17      117      131 presente      MA            FO
  1. Cree un data frame o tableta con todas las variables cuantitativas contınuas estandarizadas con el (score z) y las discretas con la estadarizacion minimax y lĺamelo tib.e. Use (mutate())
library(scales)
## 
## Attaching package: 'scales'
## The following object is masked from 'package:purrr':
## 
##     discard
library(dplyr)

tibi.e = mutate(tib.c , "bio.masa.z"= scale(tib.c$Biomasa.gramos.))


tibi.e2 <- mutate_all(tibi.e[,2:4],
funs("estandar" = rescale( . )))
## Warning: `funs()` was deprecated in dplyr 0.8.0.
## Please use a list of either functions or lambdas: 
## 
##   # Simple named list: 
##   list(mean = mean, median = median)
## 
##   # Auto named with `tibble::lst()`: 
##   tibble::lst(mean, median)
## 
##   # Using lambdas
##   list(~ mean(., trim = .2), ~ median(., na.rm = TRUE))
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
tibi.e= mutate(tibi.e,tibi.e2)
head(tibi.e[8:11])
##   bio.masa.z Flores.r_estandar Flores.d_estandar Hojas.d._estandar
## 1 -1.1193683         0.7777778        0.05405405        0.08304498
## 2  0.9436117         0.1111111        0.00000000        0.14532872
## 3 -1.0617432         0.3333333        0.10810811        0.74048443
## 4 -0.9925930         0.7777778        0.45945946        0.24567474
## 5  1.2202123         0.7777778        0.32432432        0.56747405
## 6 -0.3356664         0.3333333        0.51351351        0.69550173
  1. Cree una nueva variable para tib.e donde divida el numero de flores en las ramas con el numero de flores desprendidas.
tibi.e = mutate(tibi.e , "flores divi"= Flores.r/Flores.d)
head(tibi.e[12])
##   flores divi
## 1   0.1698113
## 2   0.1153846
## 3   0.1296296
## 4   0.1487603
## 5   0.1551724
## 6   0.1138211
  1. Seleccione solo la variable del cociente previo agrupada por plaga. Cree una nueva variable que imprima el rango mınimo en cada grupo. LLame a la variable rangomin
tibi.eg <- tibi.e %>% 
   group_by(Plaga) %>% 
  select("flores divi") %>% 
  filter_at(vars("flores divi"),
all_vars(. == min(.))) #variables al maximo 
## Adding missing grouping variables: `Plaga`
tibi.eg 
## # A tibble: 3 × 2
## # Groups:   Plaga [2]
##   Plaga    `flores divi`
##   <chr>            <dbl>
## 1 ausente         0.128 
## 2 ausente         0.128 
## 3 presente        0.0922
  1. Renombre las variables asociadas a las flores a su gusto. Use (rename())
tibi.er <- rename(tibi.e, "d.Flores"= Flores.d ,
"r.Flores"=Flores.r )
names(tibi.er)
##  [1] "Biomasa.gramos."   "r.Flores"          "d.Flores"         
##  [4] "Hojas.d."          "Plaga"             "Estatus"          
##  [7] "fertilizacion"     "bio.masa.z"        "Flores.r_estandar"
## [10] "Flores.d_estandar" "Hojas.d._estandar" "flores divi"
  1. Pase a mayusculas todos los nombres de las variables en cualquier tibble.
tibi.eM <- select_all(tibi.e , toupper)
names(tibi.eM )
##  [1] "BIOMASA.GRAMOS."   "FLORES.R"          "FLORES.D"         
##  [4] "HOJAS.D."          "PLAGA"             "ESTATUS"          
##  [7] "FERTILIZACION"     "BIO.MASA.Z"        "FLORES.R_ESTANDAR"
## [10] "FLORES.D_ESTANDAR" "HOJAS.D._ESTANDAR" "FLORES DIVI"
  1. Seleccione la variable biomasa de la tableta con faltantes y con summarise() obtenga la media y el n ́umero de datos de esta variable.
tibi.s= tib.i%>% 
  filter(!is.na(Biomasa.gramos.)) %>% 
  summarise_at(vars(Biomasa.gramos.),
               funs(mean,length))

tibi.s
##       mean length
## 1 5.276494     77
  1. Seleccione la variable biomasa de la tableta con faltantes y con summarise() obtenga la media y el n ́umero de datos por tipo de fertilizacion.
tibi.sf= tib.i%>% 
  group_by(fertilizacion) %>% 
   filter(!is.na(Biomasa.gramos.)) %>% 
  summarise_at(vars(Biomasa.gramos.),
               funs(mean,length))
tibi.sf
## # A tibble: 2 × 3
##   fertilizacion  mean length
##   <chr>         <dbl>  <int>
## 1 FI             5.24     55
## 2 FO             5.36     22
  1. Seleccione la variable biomasa de la tableta con faltantes y con summarise() obtenga los cuantiles 0.10,0.20,0.30,0.40 y 0.50 por tipo de fertilizacion.
tibi.sq= tib.i%>% 
  group_by(fertilizacion) %>% 
   filter(!is.na(Biomasa.gramos.)) %>% 
  summarise_at(vars(Biomasa.gramos.),
               funs(quantile(Biomasa.gramos.,probs=c(10, 20, 30, 40,50)/100)))

tibi.sq
## # A tibble: 10 × 2
## # Groups:   fertilizacion [2]
##    fertilizacion Biomasa.gramos.
##    <chr>                   <dbl>
##  1 FI                       4.25
##  2 FI                       4.56
##  3 FI                       4.81
##  4 FI                       4.97
##  5 FI                       5.17
##  6 FO                       4.56
##  7 FO                       4.62
##  8 FO                       4.77
##  9 FO                       5.12
## 10 FO                       5.22
  1. Seleccione la variable biomasa de la tableta con faltantes y con summarise() obtenga la media, mediana, maximo, mınimo, desviacion tıpica, desviacion,media, media truncada y varianza por tipo de fertilizacion y plaga.
tibi.ss= tib.i%>% 
  group_by(fertilizacion,Plaga) %>% 
   filter(!is.na(Biomasa.gramos.)) %>% 
  summarise_at(vars(Biomasa.gramos.),
               funs(length,mean,sd,max,min,median,
                    "media truncada"=mean(Biomasa.gramos., trim = 0.1),
                    var))

tibi.ss
## # A tibble: 4 × 10
## # Groups:   fertilizacion [2]
##   fertilizacion Plaga    length  mean    sd   max   min median `media truncada`
##   <chr>         <chr>     <int> <dbl> <dbl> <dbl> <dbl>  <dbl>            <dbl>
## 1 FI            ausente      10  5.28 0.549  6.19  4.67   5.30             5.24
## 2 FI            presente     45  5.23 0.757  7.03  4.07   5.15             5.20
## 3 FO            ausente      10  5.25 0.579  6.67  4.56   5.26             5.16
## 4 FO            presente     12  5.45 1.15   7.27  4.04   5.08             5.41
## # … with 1 more variable: var <dbl>
  1. Seleccione la variable biomasa de la tableta con faltantes y con summarise() obtenga la media, mediana, maximo, mınimo, desviacion tıpica, desviacion,media, media truncada y varianza por tipo de fertilizacion y plaga filtrando por plantas sanas.
tibi.ssd= tib.i%>% 
  filter(Estatus == "S") %>% 
  group_by(fertilizacion,Plaga) %>% 
   filter(!is.na(Biomasa.gramos.)) %>% 
  summarise_at(vars(Biomasa.gramos.),
               funs(length,mean,sd,max,min,median,
                    "media truncada"=mean(Biomasa.gramos., trim = 0.1),
                    var))

tibi.ssd
## # A tibble: 4 × 10
## # Groups:   fertilizacion [2]
##   fertilizacion Plaga    length  mean     sd   max   min median `media truncada`
##   <chr>         <chr>     <int> <dbl>  <dbl> <dbl> <dbl>  <dbl>            <dbl>
## 1 FI            ausente       1  5.25 NA      5.25  5.25   5.25             5.25
## 2 FI            presente     22  5.25  0.823  7.03  4.22   5.31             5.22
## 3 FO            ausente       2  5.95  1.02   6.67  5.23   5.95             5.95
## 4 FO            presente      3  6.38  1.54   7.27  4.6    7.27             6.38
## # … with 1 more variable: var <dbl>

Con la tableta con faltantes use la funci ́on dropna() para sacar los faltantes y compare las estad ́ısticas obtenidas en el item anterior con y sin faltantes

tibi.ssd2= tib.i%>% 
  filter(Estatus == "S") %>% 
  group_by(fertilizacion,Plaga) %>% 
  summarise_at(vars(Biomasa.gramos.),
               funs(length,mean,sd,max,min,median,
                    "media truncada"=mean(Biomasa.gramos., trim = 0.1),
                    var))

tibi.ssd2
## # A tibble: 4 × 10
## # Groups:   fertilizacion [2]
##   fertilizacion Plaga    length  mean     sd   max   min median `media truncada`
##   <chr>         <chr>     <int> <dbl>  <dbl> <dbl> <dbl>  <dbl>            <dbl>
## 1 FI            ausente       1  5.25 NA      5.25  5.25   5.25             5.25
## 2 FI            presente     22  5.25  0.823  7.03  4.22   5.31             5.22
## 3 FO            ausente       2  5.95  1.02   6.67  5.23   5.95             5.95
## 4 FO            presente      6 NA    NA     NA    NA     NA               NA   
## # … with 1 more variable: var <dbl>
  1. Filtre los datos seleccionando solo las plantas afectadas o muy afectadas.Use el operador %in %
tibi.in <- filter(tib.i,
Estatus %in% c("PA", "MA"))
head(tibi.in)
##   Biomasa.gramos. Flores.r Flores.d Hojas.d.    Plaga Estatus fertilizacion
## 1            4.81       17      116      178  ausente      MA            FI
## 2            5.30       20      117       47  ausente      PA            FO
## 3              NA       17      121      287  ausente      PA            FI
## 4            6.19       18      104      252  ausente      MA            FI
## 5            4.07       14      141      219 presente      MA            FI
## 6              NA       18      121      100  ausente      PA            FI
table(tibi.in$Estatus)
## 
##  S PA MA 
##  0 29 30
  1. Seleccione la tibble con faltantes y use complete.cases(.) para dejar por fuera los faltantes
tib.icases =tib.i %>% 
 filter(complete.cases(tib.i))

table(is.na(tib.icases))
## 
## FALSE 
##   525
  1. Elimine de cualquier tibble las columnas asociadas al conteo de flores
names(tib.c)
## [1] "Biomasa.gramos." "Flores.r"        "Flores.d"        "Hojas.d."       
## [5] "Plaga"           "Estatus"         "fertilizacion"
tib.f = tib.c %>% 
  select(!starts_with("Flores"))
names(tib.f)
## [1] "Biomasa.gramos." "Hojas.d."        "Plaga"           "Estatus"        
## [5] "fertilizacion"
  1. Seleccione de cualquier tibble las avriables que contengan la d. Use select(contains()) Reordene una tableta usando select(,everything()) colocando

primero los conteos de flores

tib.nf= tib.c %>% 
  select(contains("d")) %>% 
  select(everything(vars = c("flores","hojas") ))
head(tib.nf)
##   Flores.d Hojas.d.
## 1      106       26
## 2      104       44
## 3      108      216
## 4      121       73
## 5      116      166
## 6      123      203