2017-04-07 3 views
0

Können wir Tapply-Funktion in Verbindung mit ks.test in R verwenden?Können wir die Tapply-Funktion in Verbindung mit ks.test in R verwenden?

Tapply wird verwendet, um Funktionen auf mehrere Ergebnisse gleichzeitig anzuwenden.

tapply(airquality$Month,airquality$Day, ks.test) 

Wenn verwende ich die Funktion ich so den Fehler bekam:

Error in FUN(X[[i]], ...) : argument "y" is missing, with no default 

Kann jemand empfehlen, gibt es eine Möglichkeit tapply die Verwendung mit ks.test?

+1

y ist ein erforderliches Argument von ks.test. Was versuchst du hier zu erreichen? – HubertL

+0

Ich habe versucht, dieses zu In diesem Fall verwenden Ich verwende WorldPhones, die eine vordefinierte Datensatzes in R tapply (ks.test (WorldPhones [4], WorldPhones [2])) –

+0

was 'ks. Test (Luftqualität $ Monat, Luftqualität $ Tag) ' – HubertL

Antwort

0

Wie @HubertL erwähnt, ks.test in R erfordert das y-Argument daher der Fehler, der Ihnen sagt, dass 'y' fehlt. Aus der Dokumentation sollte y ein numerischer Vektor im Fall des Zwei-Proben-KS-Tests sein. Wenn Sie einen ks-Test mit einer Stichprobe durchführen, sollte y eine Zeichenfolge für die Verteilung sein, mit der Sie sie vergleichen (z. B. pnorm für normal, pγ für gamma).

Ich denke, das ist, was Sie wollen:

tapply(airquality$Month, airquality$Day, ks.test, y = "pnorm") 

dplyr Lösung (Listenspalten)

airquality %>% group_by(Day) %>% do(test_result = ks.test(.$Month, y = "pnorm") 

Wenn Sie eine ks.test für beide Variablen erhalten wollte dann Sie wollen:

lapply(airquality[c("Month", "Day")], ks.test, y = "pnorm") 
Verwandte Themen