Indholdsfortegnelse:
Video: Oprette og behandle ordrer i Xena | Guide 2025
Du bruger tapply () til at oprette tabulære resuméer af data i R. Med tapply () kan du nemt oprette resuméer af undergrupper i data. Denne funktion tager tre argumenter:
-
X : En vektor
-
INDEKS : En faktor eller liste over faktorer
-
FUN : En funktion < Eksempel: Beregn den gennemsnitlige sepallængde i datasættet iris: >> tapply (iris $ Sepal. Længde, iris $ Arter, gennemsnit) setosa versicolor virginica 5. 006 5. 936 6. 588
Med dette kort linje af kode, du gør nogle magtfulde ting. Du fortæller R at tage Sepal. Længde kolonne, opdelt efter arter, og derefter beregne middelværdien for hver gruppe.
Dette er et vigtigt idiom til at skrive kode i R, og det går normalt under navnet Split, Apply, and Combine (SAC). I dette tilfælde deler du en vektor i grupper, bruger en funktion til hver gruppe, og kombinerer resultatet derefter med en vektor.
Selvfølgelig kan du bruge funktionen with () til at skrive din kodelinje på en lidt mere læsbar måde: >> med (iris, tapply (Sepal. Længde, Arter, middel)) setosa versicolor virginica 5. 006 5. 936 6. 588Ved hjælp af tapply () kan du også oprette mere komplekse tabeller for at opsummere dine data. Det gør du ved at bruge en liste som dit INDEX-argument.
Sådan bruges tapply () til at oprette højere dimensionelle tabeller
Prøv f.eks. At opsummere datarammen mtcars, en indbygget dataramme med data om motorkøretøjer og ydeevne. Som med ethvert objekt kan du bruge str () til at inspicere dens struktur: >> str (mtcars)
Variabel am er en numerisk vektor, der angiver, om motoren har en automatisk (0) eller manuel (1) gearkasse. Fordi dette ikke er meget beskrivende, start med at oprette et nyt objekt, biler, det er en kopi af mtcars, og skift kolonnen am til at være en faktor:
>> biler <- inden (mtcars, + am <- faktor (am, niveauer = 0: 1, etiketter = c ("Automatisk", "Manuel")) +)
Nu Brug tapply () for at finde de gennemsnitlige miles per gallon (mpg) for hver type gearkasse: >> med (biler, tapply (mpg, am, mean)) Automatisk Manuel 17. 14737 24. 39231
Ja, du er korrekt. Dette er stadig kun et endimensionelt bord. Prøv nu at lave et todimensionelt bord med gearkassen (am) og antal gear (gear): >> med (biler, tapply (mpg, liste (gear, am) 3 16. 10667 NA 4 21. 05000 26. 275 5 NA 21. 380
Du bruger tapply () til at oprette tabeloversigter af data. Dette ligner lidt på tabellen () funktionen. Tabellen () kan dog kun oprette beredskabstabeller (det vil sige tabeller af tællinger), mens tapply () du kan angive nogen funktion som aggregationsfunktionen.Med andre ord, med tapply () kan du beregne tæller, midler eller anden værdi.
Hvis du vil opsummere statistikker på en enkelt vektor, er tapply () meget nyttig og hurtig at bruge.Hvordan man bruger aggregat ()
En anden R-funktion, der gør noget meget ens, er aggregat (): >> med (biler, aggregat (mpg, liste (gear = gear, am = am)) gear am x 1 3 Automatisk 16. 10667 2 4 Automatisk 21. 05000 3 4 Manuel 26. 27500 4 5 Manuel 21. 38000
Dernæst tager du aggregat () til nye højder ved hjælp af formel grænsefladen.