Package 'estadisticaFcaUnl'

Title: Herramientas y Datos para Estadística en FCA-UNL
Description: Provee conjuntos de datos y funciones auxiliares para la enseñanza y práctica de la estadística en la Facultad de Ciencias Agrarias de la Universidad Nacional del Litoral.
Authors: Alejandro Aléman [aut, cre] (affiliation: Cátedra de Estadística FCA-UNL), Patricia M. Acetta [aut] (affiliation: Cátedra de Estadística FCA-UNL), Agustin Alesso [aut] (affiliation: Cátedra de Estadística FCA-UNL)
Maintainer: Alejandro Aléman <[email protected]>
License: GPL (>= 3)
Version: 0.5.0
Built: 2026-10-11 11:18:52 UTC
Source: https://github.com/Estadistica-FCA/estadisticaFcaUnl

Help Index


Ajustar la significancia de un efecto en un diseño experimental

Description

Modifica los datos de un diseño experimental para garantizar que un término específico (tratamiento o interacción) resulte significativo (p < alpha) o no significativo, preservando la estructura de bloques y otros factores.

Utiliza ajustar_variables internamente para realizar las modificaciones.

Usage

ajustar_significancia(
  data,
  formula,
  term = NULL,
  sig,
  alpha = 0.05,
  magnitud = 2
)

Arguments

data

Dataframe con los datos del experimento.

formula

Fórmula del diseño (ej. y ~ A * B).

term

El término a manipular (ej. "A", "A:B"). Si es NULL, se intenta detectar automáticamente (priorizando interacciones sobre efectos principales).

sig

Lógico. TRUE para buscar diferencias significativas, FALSE para eliminarlas.

alpha

Nivel de significancia nominal (solo referecial por ahora, controla la magnitud del cambio).

magnitud

Multiplicador del desvío estándar para generar las diferencias. Valor más alto = p-valor más bajo.

Value

El dataframe modificado.

Examples

library(stats)

# 1. Caso con energia_abejas: Forzar NO Significativo en Interacción
data(energia_abejas)
mod0 <- aov(Energia ~ Temp_ord * Visc_ord, data = energia_abejas)
summary(mod0)

energia_ns <- ajustar_significancia(energia_abejas, Energia ~ Temp_ord * Visc_ord,
    sig = FALSE
)
summary(aov(Energia ~ Temp_ord * Visc_ord, data = energia_ns))

# 2. Caso con sal_suelo: Forzar NO significativo en interacción específica
data(sal_suelo)
mod_sal <- aov(EC ~ Salinidad_ord * Agua_ord + Textura, data = sal_suelo)
summary(mod_sal)

sal_ns <- ajustar_significancia(sal_suelo, EC ~ Salinidad_ord * Agua_ord + Textura,
    term = "Salinidad_ord:Agua_ord",
    sig = FALSE
)
summary(aov(EC ~ Salinidad_ord * Agua_ord + Textura, data = sal_ns))

Ajustar variables de un dataframe a nuevas medidas de tendencia, dispersión, forma y outliers

Description

Modifica una columna numérica de un data.frame para ajustar:

  1. Forma (Asimetría y Curtosis) usando el método de Fleishman.

  2. Cantidad aproximada de outliers (inyectando o recortando).

  3. Tendencia (Media) y Dispersión (Desvío Estándar) mediante transformación lineal.

Soporta dataframes agrupados (grouped_df de dplyr).

Usage

ajustar_variables(
  data,
  col,
  media_obj = NULL,
  desvio_obj = NULL,
  asim_obj = NULL,
  curt_obj = NULL,
  n_outliers = NULL,
  mantener_originales = FALSE
)

Arguments

data

Un data.frame (o grouped_df) que contiene la columna a modificar.

col

Nombre de la columna a modificar (string).

media_obj

Media objetivo. Numérico (escalar o vector/lista por grupos) o nombre de columna.

desvio_obj

Desviación estándar objetivo. Numérico (escalar o vector/lista por grupos) o nombre de columna.

asim_obj

Asimetría objetivo. Numérico (escalar o vector/lista por grupos) o nombre de columna.

curt_obj

Curtosis objetivo (3 = Normal). Numérico (escalar o vector/lista por grupos) o nombre de columna.

n_outliers

Número aproximado de outliers. Numérico (escalar o vector/lista por grupos) o nombre de columna.

mantener_originales

Lógico. Si es TRUE, los parámetros no especificados (NULL) se rellenan con los valores originales de la muestra. Si es FALSE (default), se dejan como NULL y la función solo ajusta lo solicitado.

Value

Un data.frame con la columna especificada modificada.

Examples

## Not run: 
library(dplyr)
data("energia_abejas")

# Ejemplo: Modificar por grupos usando listas para parámetros especificos
# Grupo 1: Sin cambios (NULL) - Manteniendo originales
# Grupo 2: Asimetria -0.1
# Grupo 3: Asimetria 0.1
energia_mod <- energia_abejas %>%
    group_by(Temp_ord) %>%
    ajustar_variables(
        col = "Energia",
        asim_obj = list(NULL, -0.1, 0.1),
        mantener_originales = TRUE
    ) %>%
    ungroup()

## End(Not run)

Chequear lista de mirrors

Description

Función que chequea una lista de mirrors y elige el optimo

Usage

check_mirrors(mirrors)

Arguments

mirrors

Vector de caracteres. Espera los mirrors a chequear

Details

Recorre la lista de mirrors en orden y chequea que funciona. Si funciona lo retorna. Si no funciona pasa al siguiente, si ninguno funciona devuelve error

Value

Devuelve una url de un mirror valida


Test Chi-cuadrado para una varianza

Description

Realiza pruebas de hipotesis e intervalos de confianza para la varianza de una poblacion normal a partir de una muestra o de estadisticos muestrales.

Usage

chi.test(
  x = NULL,
  sigma2 = NULL,
  alternative = c("two.sided", "less", "greater"),
  conf.level = 0.95,
  s2 = NULL,
  n = NULL
)

Arguments

x

Vector numerico. Muestra observada.

sigma2

Numerico. Valor de la varianza poblacional bajo la hipotesis nula (H0).

alternative

String de caracteres que especifica la hipotesis alternativa. Debe ser "two.sided" (default), "greater" o "less".

conf.level

Numerico. Nivel de confianza del intervalo. Por defecto es 0.95.

s2

Numerico. Varianza muestral (para entrada de datos resumidos).

n

Numerico. Tamano de la muestra (para entrada de datos resumidos).

Value

Un objeto de la clase "htest" que contiene:

  • statistic: El valor del estadistico Chi-cuadrado (X-squared).

  • parameter: Los grados de libertad (df).

  • p.value: El p-valor de la prueba.

  • conf.int: El intervalo de confianza para la varianza.

  • estimate: La varianza muestral estimada.

  • null.value: El valor hipotetico de la varianza.

  • alternative: Un string que describe la hipotesis alternativa.

  • method: Un string indicando el tipo de prueba realizada.

  • data.name: Un string con el nombre de los datos o estadisticos ingresados.

Examples

# Usando un vector de datos
set.seed(123)
x <- rnorm(20, mean = 5, sd = 2)
chi.test(x, sigma2 = 4)

# Usando estadisticos muestrales directamente
chi.test(s2 = 3.5, n = 25, sigma2 = 2.5)

Eficiencia Relativa de un Diseño en Bloques Completos al Azar o Cuadrado Latino

Description

Calcula la eficiencia relativa (ER) de aplicar un diseño de bloques completos al azar (DBCA) frente a un diseño completamente al azar (DCA), o de un diseño en cuadrado latino (DCL) frente a un diseño en bloques completos al azar (DBCA).

Usage

er_bloqueo(formula, data, comparacion = "DCAvsDBCA")

Arguments

formula

Una fórmula del modelo del tipo respuesta ~ bloque + tratamiento (para DCA vs DBCA) o respuesta ~ fila + columna + tratamiento (para DBCA vs DCL).

data

Un data.frame que contiene las variables del modelo.

comparacion

Carácter. Indica la comparación a realizar: "DCAvsDBCA" (por defecto) para comparar DCA frente a DBCA, o "DBCAvsDCL" para comparar DBCA frente a DCL (diseño en cuadrado latino).

Details

La función estima la eficiencia relativa basándose en la comparación de las varianzas estimadas (CME) bajo los diseños involucrados y realiza una corrección por grados de libertad. En la comparación "DCAvsDBCA", el término del bloque debe especificarse en primer lugar a la derecha de la fórmula. En la comparación "DBCAvsDCL", los dos primeros términos a la derecha de la fórmula representan las filas y las columnas respectivamente.

Value

Retorna de manera invisible un valor numérico que representa la eficiencia relativa. Para "DBCAvsDCL", retorna de manera invisible un vector con dos valores correspondientes a la eficiencia relativa considerando las filas como bloques y las columnas como bloques respectivamente.

Examples

library(estadisticaFcaUnl)

# Comparación DCA vs DBCA
data(fertilizante_pastizal)
er_bloqueo(P ~ Bloque + Tratamiento, fertilizante_pastizal)

# Comparación DBCA vs DCL
data(densidad_trigo_riego_suelo)
er_bloqueo(
  rend ~ Fila + Columna + Densidad_ord,
  densidad_trigo_riego_suelo,
  comparacion = "DBCAvsDCL"
)

Capa de Vallas para Outliers

Description

Agrega vallas internas y externas a un gráfico ggplot2. Permite personalizar directamente los colores para las vallas internas y externas.

Usage

geom_vallas(
  mapping = NULL,
  data = NULL,
  position = "identity",
  na.rm = FALSE,
  show.legend = NA,
  inherit.aes = TRUE,
  color_interna = "orange",
  color_externa = "red",
  linetype = "dashed",
  linewidth = 1,
  size_texto = 3.5,
  mostrar_vallas = "todas",
  ...
)

StatVallasOnlyLines

StatVallasOnlyLabels

Arguments

mapping

Conjunto de mapeos estéticos creados por aes.

data

Los datos que se mostrarán en esta capa.

position

Ajuste de posición.

na.rm

Si FALSE (por defecto), los valores faltantes se eliminan con una advertencia. Si TRUE, se eliminan silenciosamente.

show.legend

Lógico. ¿Debería esta capa incluirse en las leyendas?

inherit.aes

Si FALSE, anula el comportamiento de heredar los estéticos del gráfico principal.

color_interna

Color para las vallas internas (VII, VIS).

color_externa

Color para las vallas externas (VEI, VES).

linetype

Tipo de línea para las vallas (por defecto "dashed").

linewidth

Grosor de las líneas de las vallas (por defecto 1).

size_texto

Tamaño del texto de las etiquetas (por defecto 3.5).

mostrar_vallas

Qué vallas mostrar: "todas" (por defecto), "internas" o "externas".

...

Otros argumentos pasados a layer.


Instalar desde miniCRAN

Description

Función que instala los paquetes especificados desde un repositorio local

Usage

install.local_repo(pkgs = NULL, repo_path = NULL, install = TRUE)

Arguments

pkgs

Vector de caracteres. Espera los paquetes a instalar

repo_path

String. Espera la ruta donde instalar el repositorio. Si no se especifica se toma el del script donde se está ejecutando

install

Logico. Parámetro de debug que permite correr la función sin descargar nada

Details

Primero chequea que se halla ingresado una lista de paquetes y el SO en el que opera Luego chequea si se especifico la ruta donde deberá descargarse el repositorio, si no lo está utiliza la del scrip donde es está ejecutando Seguido de esto chequea cuales de los paquetes indicados están dentro del repositorio Por ultimo instala los paquetes validos y retorna un informe con la ruta del repositorio, los paquetes validos y los invalidos

Value

Retorna una lista con la ruta del repositorio, el tipo de paquetes descargados, los paquetes exitosos y los que dieron error

Examples

pkgs <- c(
    "rmarkdown", "moments", "pacman", "rio", "tidyverse",
    "emmeans", "car", "DescTools", "agricolae", "multcomp", "multcompView",
    "ggplot2"
)
## Not run: 
install.local_repo(pkgs)

## End(Not run)

Armar miniCRAN local

Description

Función que arma un miniCRAN de manera local

Usage

mkminiCRAN(
  pkgs,
  path = NULL,
  so = c("windows", "linux", "macos"),
  mirrors = NULL
)

Arguments

pkgs

Vector de caracteres. Espera los paquetes a instalar

path

String. Espera la ruta donde deberá armarse el miniCRAN

so

Vector de caracteres. Espera los sistemas operativos a utilizar. Por defecto incluye los tres más importantes

mirrors

Vector de caracteres. Puede especificarse una lista de mirrors a utilizar. Si no se especifica usa los que trae por defecto

Details

Primero chequea el mirror a utilizar. Luego crea el directorio donde almacenar el repositorio. Luego obtiene las dependencias de los paquetes de acuerdo al SO a utilizar Por ultimo descarga los paquetes necesarios y retorna un vector con los paquetes descargados.

Value

Devuelve una vector con los paquetes instalados+

Examples

pkgs <- c(
    "rmarkdown", "moments", "pacman", "rio", "tidyverse", "emmeans",
    "car", "DescTools", "agricolae", "multcomp", "multcompView", "ggplot2"
)
path <- "/home/path_to_repo"
## Not run: 
mkminiCRAN(pkgs, path)

## End(Not run)

Calcular Vallas para determinar Outliers

Description

Función que calcula las vallas internas y externas para la detección de valores atípicos (outliers). Permite ingresar los cuartiles Q1 y Q3 directamente o un vector de datos para calcularlos. Si se proporciona un vector de datos, también contabiliza e informa la cantidad de outliers leves y severos.

Usage

vallas_outliers(data = NULL, Q1 = NULL, Q3 = NULL)

Arguments

data

Vector numérico de datos. Si se proporciona, se calculan Q1 y Q3 a partir de él (si no fueron especificados) y se cuentan los outliers.

Q1

Numerico. Valor del primer cuartil (25%). Opcional si se proporciona data.

Q3

Numerico. Valor del tercer cuartil (75%). Opcional si se proporciona data.

Value

Retorna invisiblemente un data frame con los valores de las vallas:

  • VEI: Valla Externa Inferior (Q1 - 3 * IQR)

  • VII: Valla Interna Inferior (Q1 - 1.5 * IQR)

  • VIS: Valla Interna Superior (Q3 + 1.5 * IQR)

  • VES: Valla Externa Superior (Q3 + 3 * IQR)

Examples

# Usando cuartiles directamente
res <- vallas_outliers(Q1 = 10, Q3 = 20)
res$VII

# Usando un vector de datos
set.seed(123)
datos <- rnorm(100)
vallas_outliers(data = datos)

Verificar Ortogonalidad de una Matriz

Description

Comprueba si las columnas de una matriz son ortogonales entre sí y si suman cero (contrastes).

Usage

verificar_ortogonalidad(M, tol = 1e-08)

Arguments

M

Una matriz numérica.

tol

Tolerancia numérica para las comparaciones con cero (por defecto 1e-8).

Value

Un valor lógico (invisible): TRUE si las columnas son ortogonales y suman cero, FALSE en caso contrario.

Examples

K <- cbind(
    C1 = c(1, -1 / 4, -1 / 4, -1 / 4, -1 / 4),
    C2 = c(0, 1, -1, 0, 0),
    C3 = c(0, 0, 0, 1, -1),
    C4 = c(0, 1 / 2, 1 / 2, -1 / 2, -1 / 2)
)
verificar_ortogonalidad(K)

Calcular z-scores para determinar Outliers

Description

Calcula los valores estandarizados (z-scores) para una columna de un data.frame, agregando una columna z con los resultados e informando por consola la cantidad de valores que superan 2 y 3 desviaciones estándar.

Usage

z_score(data = NULL, col = NULL)

Arguments

data

Un data.frame o grouped_df que contiene la columna a analizar (por defecto NULL).

col

Nombre de la columna (carácter o nombre sin comillas) de la cual se desea obtener el z-score (por defecto NULL).

Value

Retorna de manera invisible el data.frame (o grouped_df) recibido con una columna extra z que contiene los z-scores calculados.

Examples

library(estadisticaFcaUnl)
data(fertilizante_pastizal)

# Usando nombre de columna como cadena
z_score(fertilizante_pastizal, "P")

# Usando nombre de columna sin comillas
z_score(fertilizante_pastizal, P)

Test de distribucion Normal Z

Description

Realiza pruebas de hipotesis de una o dos muestras con distribucion normal (para medias o proporciones).

Usage

z.test(
  x = NULL,
  y = NULL,
  sig_x,
  sig_y = NULL,
  alternative = c("two.sided", "less", "greater"),
  mu = 0,
  conf.level = 0.95,
  p1 = NULL,
  p2 = NULL,
  n1 = NULL,
  n2 = NULL
)

Arguments

x

Vector numerico. Muestra para una muestra o primer muestra para dos muestras.

y

Vector numerico. Segunda muestra para dos muestras. Optional.

sig_x

Numerico. Desviacion estandar poblacional para x.

sig_y

Numerico. Desviacion estandar poblacional para y. Requerido para dos muestras.

alternative

String de caracteres que especifica la hipotesis alternativa. Debe ser "two.sided" (default), "greater" o "less".

mu

Numerico. Hipotesis nula para la media, diferencia de medias o proporcion. Por defecto es 0.

conf.level

Numerico. Nivel de confianza del intervalo. Por defecto es 0.95.

p1

Numerico. Proporcion de exito muestral (para una o dos proporciones).

p2

Numerico. Proporcion de exito en la poblacion 2 (para prueba de dos proporciones).

n1

Numerico. Tamaño de la muestra (para una o dos proporciones).

n2

Numerico. Tamaño de la muestra para la poblacion 2 (para prueba de dos proporciones).

Value

Un objeto de la clase "htest" que contiene los siguientes componentes:

  • statistic: El valor del estadistico Z.

  • p.value: El p-valor para la prueba.

  • conf.int: Un intervalo de confianza apropiado a la hipotesis alternativa especificada.

  • estimate: La estimacion de la media, diferencia en medias/proporciones, o proporcion de la muestra.

  • null.value: El valor hipotetico de la media, diferencia en medias, o proporcion.

  • alternative: Un string descriptivo de la hipotesis alternativa.

  • method: Un string indicando el tipo de prueba realizada.

  • data.name: Un string que da el nombre(s) de los datos.

Examples

# One-sample Z-test
x <- rnorm(100, mean = 10, sd = 2)
z.test(x, sig_x = 2, mu = 10)

# Two-sample Z-test
y <- rnorm(100, mean = 12, sd = 2)
z.test(x, y, sig_x = 2, sig_y = 2)

# One-proportion Z-test
z.test(p1 = 0.4, n1 = 100, mu = 0.5)

# Two-proportion Z-test
z.test(p1 = 0.5, p2 = 0.6, n1 = 100, n2 = 100)