Seite 1 von 1

Bartlett-Test einer Matrix

Verfasst: So Mai 21, 2017 5:46 pm
von michi9999
Hallo,

Ich habe eine Matrix (Excel-Tabelle) und möchte damit einen Bartlett-Test durchführen. Als Bsp: bartlett.test(june$numb_tot~june$Management).
Meine Datei heißt june. Ich möchte alle Spalten meiner Excel-Tabelle (Vektoren) mit der Spalte Management ''prüfen''. Da es viele Spalten sind habe ich mich gefragt ob man das nicht eben als Matrix schneller machen kann, weil so muss ich den Befehl immer neu für jede Spalte eingeben.

LG

Re: Bartlett-Test einer Matrix

Verfasst: So Mai 21, 2017 5:58 pm
von michi9999
Zum bessern Verständnis: Ich habe eine Matrix mit 45 Spalten und 8 Zeilen. Diese Matrix will ich mit dem Vektor (natürlich ebenfalls 8 Zeilen lang) Management testen.

Re: Bartlett-Test einer Matrix

Verfasst: So Mai 21, 2017 8:18 pm
von jogo
Hallo michi9999,

willkommen im Forum!
Das ist ein Fall für lapply():

Code: Alles auswählen

lapply(june, function(x) bartlett.test(x ~ june$Management))
Gruß, Jörg

Re: Bartlett-Test einer Matrix

Verfasst: Mo Mai 22, 2017 10:46 am
von michi9999
Danke für die Antwort :-)

Ich hab den code noch ein bisschen modifiziert: do.call(rbind, lapply(Dateiname, function(x) bartlett.test(x,Dateiname$Management)[c("statistic", "parameter", "p.value")])) -> hier bekommst du gleich eine Tabelle ausgespuckt.

Re: Bartlett-Test einer Matrix

Verfasst: Mo Mai 22, 2017 10:50 am
von michi9999
So das gleiche hab ich jetzt für den flinger test versucht (für meine Daten die nicht normalverteilt sind).

Jedoch bekomm ich bei folgender Eingabe: lapply(june, function(x) fligner.test(x ~ june$Management)) immer die Fehlermeldung:
Fehler in median.default(X[], ...) : need numeric data

Ich versteh aber nicht warum, denn bei der Hilfe zum flinger.test Befehl steht das gleiche wie beim bartlett test, also dachte ich das müsste doch auch so gehn?

Hat jemand eine Idee wie ich den flinger test auf eine Matrix anwende?

Re: Bartlett-Test einer Matrix

Verfasst: Mo Mai 22, 2017 12:06 pm
von jogo
Hallo Michi,

bitte schau Dir mal das Ergebnis von

Code: Alles auswählen

str(june)
an. Gibt es da Faktoren, die Du bisher für Zahlen gehalten hast?
Faktoren müsstest Du ausschließen.
Bitte denke auch daran, dass bei lapply(june, ...) auch auf june$Management die Funktion angewendet wird.

Bitte gewöhne Dich daran, Codestücke in Deinen Nachrichten zu formatieren: viewtopic.php?f=20&t=29

Gruß, Jörg