Como realizar testes de tempo de execução em r
O teste de execução é um teste estatístico usado para determinar se um conjunto de dados vem ou não de um processo aleatório.
As hipóteses nula e alternativa do teste são as seguintes:
H 0 (nulo): os dados foram produzidos aleatoriamente.
Ha (alternativa): Os dados não foram gerados aleatoriamente.
Este tutorial explica dois métodos que você pode usar para realizar execuções de teste em R. Observe que ambos os métodos levam aos mesmos resultados de teste.
Método 1: execute o teste usando a biblioteca snpar
A primeira maneira de realizar o teste Run é usar a função runs.test() da biblioteca snpar , que usa a seguinte sintaxe:
executa.test(x, exato = FALSO, alternativa = c(“dois lados”, “menos”, “maior”))
Ouro:
- x: um vetor numérico de valores de dados.
- exato: indica se um valor p exato deve ser calculado. Isso é FALSO por padrão. Se o número de execuções for pequeno o suficiente, você poderá alterá-lo para TRUE.
- alternativa: indica a hipótese alternativa. O padrão é frente e verso.
O código a seguir mostra como realizar o teste Run usando esta função em R:
library(snpar) #create dataset data <- c(12, 16, 16, 15, 14, 18, 19, 21, 13, 13) #perform Run's test runs.test(data) Approximate runs rest data:data Runs = 5, p-value = 0.5023 alternative hypothesis: two.sided
O valor p do teste é 0,5023 . Como isso não é inferior a α = 0,05, não rejeitamos a hipótese nula. Temos evidências suficientes para dizer que os dados foram gerados aleatoriamente.
Método 2: execute o teste usando a biblioteca randtests
A segunda maneira de realizar o teste Run é usar a função runs.test() da biblioteca randtests , que usa a seguinte sintaxe:
runs.test(x, alternativa = c(“ambos os lados”, “menos”, “maior”))
Ouro:
- x: um vetor numérico de valores de dados.
- alternativa: indica a hipótese alternativa. O padrão é frente e verso.
O código a seguir mostra como realizar o teste Run usando esta função em R:
library(randtests) #create dataset data <- c(12, 16, 16, 15, 14, 18, 19, 21, 13, 13) #perform Run's test runs.test(data) Test Runs data:data statistic = -0.67082, runs = 5, n1 = 5, n2 = 5, n = 10, p-value = 0.5023 alternative hypothesis: nonrandomness
Novamente, o valor p do teste é 0,5023 . Como isso não é inferior a α = 0,05, não rejeitamos a hipótese nula. Temos evidências suficientes para dizer que os dados foram gerados aleatoriamente.