Como realizar testes de tempo de execução em python
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 Python.
Exemplo: execute um teste em Python
Podemos realizar execuções de teste em um determinado conjunto de dados em Python usando a função runstest_1samp() da biblioteca statsmodels , que usa a seguinte sintaxe:
runstest_1samp(x, corte=’média’, correção=Verdadeiro)
Ouro:
- x: Matriz de valores de dados
- corte: O limite a ser usado para dividir os dados em valores grandes e pequenos. O padrão é “média”, mas você também pode especificar “mediana” como alternativa.
- Correção: Para um tamanho de amostra inferior a 50, esta função subtrai 0,5 como correção. Você pode especificar False para desabilitar esta correção.
Esta função produz uma estatística de teste z e o valor p correspondente como saída.
O código a seguir mostra como realizar a execução de teste usando esta função em Python:
from statsmodels. sandbox . stats . runs import runstest_1samp #create dataset data = [12, 16, 16, 15, 14, 18, 19, 21, 13, 13] #Perform Runs test runstest_1samp(data, correction= False ) (-0.6708203932499369, 0.5023349543605021)
A estatística do teste z é -0,67082 e o valor p correspondente é 0,50233 . Como este valor p 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.
Nota : Para este exemplo, desabilitamos a correção ao calcular a estatística de teste. Isso corresponde à fórmula usada para realizar execuções de teste em R , que não usa correção ao executar o teste.