ECDF with Kolmogorov-Smirnov Two-Sample, Cramer-von Mises, and Kuiper Tests

Me interesa recrear los resultados de SAS NPAR1WAY al crear una distribución empírica de Rank Test.

Encontré el siguiente código para crear la distribución empírica del gráfico de rango usando el conjunto de datos iris desde ¿Una manera más fácil de trazar la distribución de frecuencia acumulativa en ggplot?

library(plyr)
data(iris)
#Ecdf within species
iris.species <- ddply(iris, .(Species), summarize,
Sepal.Length = unique(Sepal.Length),
ecdf = ecdf(Sepal.Length)(unique(Sepal.Length)))
ggplot(iris.species, aes(Sepal.Length, ecdf, color = Species)) + geom_step()

Pero no estoy seguro de cómo codificaría el Test de Kolmogorov-Smirnov, el Test de Mises Cramer-von, o el Test de Kuiper para Sepal. Longitud clasificada por Especies.

Cualquier ayuda sería muy apreciada!

Pregunta hecha hace 3 años, 4 meses, 29 días - Por geekguru


2 Respuestas:

  • Para realizar los tests de Kolmogorov-Smirnov, Cramér-von Mises y Kuiper en R con respecto a la longitud del sepalo clasificado por especies, puedes utilizar las siguientes librerías y funciones.

    • Test de Kolmogorov-Smirnov:
    Para el test de Kolmogorov-Smirnov, puedes utilizar la función ks.test de R. Aquí tienes un ejemplo de cómo realizar el test para cada especie en el conjunto de datos iris:

    R
    

    Test de Kolmogorov-Smirnov por especie

    ks_test_results <- by(iris, iris$Species, function(x) { ks.test(x$Sepal.Length, "punif")

    Test con distribución uniforme

    })

    • Test de Cramér-von Mises:
    Para el test de Cramér-von Mises, puedes utilizar la función cvm.test de la librería goftest. Aquí tienes un ejemplo de cómo realizar el test para cada especie en el conjunto de datos iris:

    R
    

    Instalar y cargar la librería goftest

    install.packages("goftest") library(goftest)

    Test de Cramér-von Mises por especie

    cvm_test_results <- by(iris, iris$Species, function(x) { cvm.test(x$Sepal.Length, "punif")

    Test con distribución uniforme

    })

    • Test de Kuiper:
    Para el test de Kuiper, puedes utilizar la función kuiper.test de la misma librería goftest. Aquí tienes un ejemplo de cómo realizar el test para cada especie en el conjunto de datos iris:

    R
    

    Test de Kuiper por especie

    kuiper_test_results <- by(iris, iris$Species, function(x) { kuiper.test(x$Sepal.Length, "punif")

    Test con distribución uniforme

    })

    Estos códigos te permitirán realizar los tests de Kolmogorov-Smirnov, Cramér-von Mises y Kuiper para la longitud del sépalo clasificado por especies en el conjunto de datos iris. ¡Espero que esta información te sea útil para recrear los resultados que necesitas!

    Respondida el Dec 19, 2020 a las 02:35 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Para realizar las pruebas de Kolmogorov-Smirnov, Cramer-von Mises y Kuiper en tu conjunto de datos iris, utilizando el lenguaje de programación R, puedes utilizar el paquete pgirmess de la siguiente manera:

    r
    

    Cargar el paquete pgirmess

    library(pgirmess)

    Realizar la prueba de Kolmogorov-Smirnov

    ks.test(iris$Sepal.Length ~ iris$Species)

    Realizar la prueba de Cramer-von Mises

    cvm.test(iris$Sepal.Length ~ iris$Species)

    Realizar la prueba de Kuiper

    kuiper.test(iris$Sepal.Length ~ iris$Species)

    Estas pruebas devolverán los valores de estadística de prueba, los valores p y la decisión de si rechazar o no la hipótesis nula de que las distribuciones de las longitudes de los sépalos son iguales entre las distintas especies.

    Respondida el Dec 19, 2020 a las 02:39 - por Gemini

    Votos positivos: 0 | Votos negativos: 0