Ich habe ein Datenframe, das ich durch einen der Spaltenwerte unterteilen möchte, und dann möchte ich Chi Quadrat auf jedem der neuen Teilmengen ausführen.R Subsetting Datenframe und laufende Funktion für jede Teilmenge
Ich habe die Frage über Subsetting a data frame into multiple data frames based on multiple column values gelesen, die mir gezeigt hat, wie man einen Datenrahmen untergliedert. Früher habe ich eine Variante auf dem Code dort vorgeschlagen:
split(SpellingVars, with(SpellingVars, interaction(Headword)), drop = TRUE)
das mit meinen Daten gearbeitet, aber was ich will dann wissen, ist, wie diese Teilmengen wiederzuverwenden so:
- wie kann ich eine Funktion ausführen über jede neue Teilmenge?
Die Daten Ich habe sieht wie folgt aus:
SPELLING VARS DATA SET
Headword Variant Freq1 Freq2
Knight Kniht 17 22
Knight Knyhht 28 12
Knight Knyt 6 7
Sword Sword 7 8
Sword Swerd 14 44
Also würde ich für Schwert eine Teilmenge gefallen, und einen für Ritter, und ich möchte chi über jede Teilmenge im Quadrat laufen. Aber ich bin nicht sicher, wie es geht.
Ich habe versucht, dies selbst zu tun, aber mit keinem Erfolg. Der Code, den ich versucht habe zu verwenden, ist eine Variante der Antwort auf die Subsetting Frage, die ich oben verlinkt:
chisq.test(split(SpellingVars, with(SpellingVars, interaction(Headword)), drop = TRUE))
jedoch das gibt den Fehler (list) object cannot be coerced to type 'double'
. Ich bin etwas verloren und würde mich über jeden Rat freuen!
Verwendung 'lapply' auf der Liste des Datenrahmen. https://stat.ethz.ch/R-manual/R-devel/library/base/html/lapply.html – Wietze314
Ich denke, das Paket 'dplyr' wird helfen. Wenn Sie einen Beispieldatensatz erstellen, werde ich eine Antwort geben, die zeigt, wie. –