Runtimetests uitvoeren in python
Runtesten zijn een statistische test die wordt gebruikt om te bepalen of een dataset al dan niet afkomstig is van een willekeurig proces.
De nul- en alternatieve hypothesen van de test zijn als volgt:
H 0 (nul): de gegevens zijn willekeurig geproduceerd.
H a (alternatief): De gegevens zijn niet willekeurig gegenereerd.
In deze tutorial worden twee methoden uitgelegd die u kunt gebruiken om testruns in Python uit te voeren.
Voorbeeld: voer een test uit in Python
We kunnen testruns uitvoeren op een bepaalde dataset in Python met behulp van de runtest_1samp() functie uit de statsmodels- bibliotheek, die de volgende syntaxis gebruikt:
runstest_1samp(x, cutoff=’gemiddelde‘, correctie=True)
Goud:
- x: Array van gegevenswaarden
- cutoff: De drempelwaarde die moet worden gebruikt om de gegevens in grote en kleine waarden te verdelen. De standaardwaarde is ‘gemiddeld’, maar u kunt als alternatief ook ‘mediaan’ opgeven.
- Correctie: Voor een steekproefomvang kleiner dan 50 trekt deze functie 0,5 af als correctie. U kunt False opgeven om deze oplossing uit te schakelen.
Deze functie produceert een z-teststatistiek en de bijbehorende p-waarde als uitvoer.
De volgende code laat zien hoe u Test Run uitvoert met deze functie in 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)
De z-teststatistiek blijkt -0,67082 te zijn en de overeenkomstige p-waarde is 0,50233 . Omdat deze p-waarde niet kleiner is dan α = 0,05, slagen we er niet in de nulhypothese te verwerpen. We hebben genoeg bewijs om te zeggen dat de gegevens willekeurig zijn gegenereerd.
Opmerking : voor dit voorbeeld hebben we de correctie uitgeschakeld bij het berekenen van de teststatistiek. Dit komt overeen met de formule die wordt gebruikt om Test Runs in R uit te voeren, waarbij geen correctie wordt gebruikt bij het uitvoeren van de test.