Ein Mann-Kendall-Trendtest wird verwendet, um festzustellen, ob in Zeitreihendaten ein Trend vorhanden ist oder nicht. Es ist ein nichtparametrischer Test, was bedeutet, dass keine zugrunde liegende Annahme über die Normalität …
Der Grubbs-Test ist ein statistischer Test, mit dem das Vorhandensein von Ausreißern in einem Datensatz ermittelt werden kann. Um diesen Test verwenden zu können, sollte ein Datensatz ungefähr normal verteilt sein und mindestens 7 Beobachtungen enthalten.
In diesem Tutorial wird erläutert, wie Sie den Grubbs-Test in R durchführen, um Ausreißer in einem Datensatz zu erkennen.
Beispiel: Grubbs-Test in R
Um den Grubbs-Test in R durchzuführen, können wir die Funktion grubbs.test() aus dem Outliers-Paket verwenden, die die folgende Syntax verwendet:
grubbs.test(x, type = 10, opposite = FALSE, two.sided = FALSE)
wo:
- x: ein numerischer Vektor von Datenwerten
- Typ: 10 = Test, ob der Maximalwert ein Ausreißer ist, 11 = Test, ob sowohl der Min- als auch der Maximalwert Ausreißer sind, 20 = Test, ob zwei Ausreißer an einer Seite vorhanden sind
- opposite: logisch, um anzugeben, ob Sie nicht den Wert mit der größten Abweichung vom Mittelwert überprüfen möchten, sondern das Gegenteil (niedrigster, wenn der verdächtigste am höchsten ist usw.)
- two.sided: logischer Wert, der angibt, ob Sie den Test als zweiseitig behandeln sollen oder nicht
Dieser Test verwendet die folgenden zwei Hypothesen:
H 0 (Nullhypothese): Die Daten enthalten keinen Ausreißer.
H A (alternative Hypothese): Die Daten enthalten einen Ausreißer.
Das folgende Beispiel zeigt, wie der Grubbs-Test durchgeführt wird, um festzustellen, ob der Maximalwert in einem Datensatz ein Ausreißer ist:
#Laden Sie das Outliers-Paket
library(Outliers)
#Daten erstellen
data <- c(5, 14, 15, 15, 14, 13, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40)
#Grubbs-Test durchführen, um festzustellen, ob 40 ein Ausreißer ist
grubbs.test(data)
# Grubbs test for one outlier
#
#data: data
#G = 2.65990, U = 0.55935, p-value = 0.02398
#alternative hypothesis: highest value 40 is an outlier
Die Teststatistik des Tests ist G = 2,65990 und der entsprechende p-Wert ist p = 0,02398. Da dieser Wert kleiner als 0,05 ist, werden wir die Nullhypothese ablehnen und daraus schließen, dass der Maximalwert von 40 ein Ausreißer ist.
Wenn wir stattdessen testen wollten, ob der niedrigste Wert von '5' ein Ausreißer ist, könnten wir den entgegengesetzten Befehl \= TRUE verwenden:
#perform Grubbs 'Test, um festzustellen, ob' 5 'ein Ausreißer ist
grubbs.test(data, opposite=TRUE)
# Grubbs test for one outlier
#
#data: data
#G = 1.4879, U = 0.8621, p-value = 1
#alternative hypothesis: lowest value 5 is an outlier
Die Teststatistik ist G = 1,4879 und der entsprechende p-Wert ist p = 1. Da dieser Wert nicht kleiner als 0,05 ist, können wir die Nullhypothese nicht ablehnen. Wir haben nicht genügend Beweise, um zu sagen, dass der Mindestwert von '5' ein Ausreißer ist.
Nehmen wir zum Schluss an, wir hätten zwei große Werte an einem Ende des Datensatzes: 40 und 42. Um zu testen, ob beide Werte Ausreißer sind, könnten wir den Grubbs-Test durchführen und den Typ = 20 angeben:
#Datensatz mit zwei großen Werten an einem Ende erstellen: 40 und 42
data <- c(5, 14, 15, 15, 14, 13, 19, 17, 16, 20, 22, 8, 21, 28, 11, 9, 29, 40, 42)
#Grubbs Test durchführen, um festzustellen, ob sowohl 40 als auch 42 Ausreißer sind
grubbs.test(data, type=20)
# Grubbs test for two outliers
#
#data: data
#U = 0.38111, p-value = 0.01195
#alternative hypothesis: highest values 40 , 42 are outliers
Der p-Wert des Tests beträgt 0,01195. Da dies weniger als 0,05 ist, können wir die Nullhypothese ablehnen und daraus schließen, dass wir genügend Beweise haben, um zu sagen, dass die Werte 40 und 42 beide Ausreißer sind.
Was tun, wenn ein Ausreißer identifiziert wird?
Wenn der Grubbs-Test einen Ausreißer in Ihrem Datensatz identifiziert, haben Sie einige Möglichkeiten:
1. Stellen Sie sicher, dass der Wert kein Tippfehler oder Dateneingabefehler ist. Gelegentlich sind Werte, die in Datensätzen als Ausreißer angezeigt werden, einfach Tippfehler, die von einer Person bei der Eingabe der Daten gemacht wurden. Gehen Sie zurück und überprüfen Sie, ob der Wert korrekt eingegeben wurde, bevor Sie weitere Entscheidungen treffen.
2. Weisen Sie dem Ausreißer einen neuen Wert zu. Wenn sich herausstellt, dass der Ausreißer auf einen Tippfehler oder einen Dateneingabefehler zurückzuführen ist, können Sie ihm einen neuen Wert zuweisen, z. B. den Mittelwert oder den Median des Datensatzes.
3. Entfernen Sie den Ausreißer. Wenn der Wert ein echter Ausreißer ist, können Sie ihn entfernen, wenn er erhebliche Auswirkungen auf Ihre Gesamtanalyse hat.
So führen Sie einen Mann-Kendall-Trendtest in Python durch
So führen Sie einen Chow-Test in Python durch
Ein Chow-Test wird verwendet, um zu testen, ob die Koeffizienten in zwei verschiedenen Regressionsmodellen auf verschiedenen Datensätzen gleich sind.
Dieser Test wird typischerweise im Bereich der Ökonometrie mit Zeitreihendaten verwendet …