Hvordan bruke det gjelder () Funksjon for å Oppsummer Arrays i R

January 13  by Eliza

Hvis du har data i form av en matrise eller matrise, og du ønsker å sammenfatte disse dataene, R gjelder () funksjonen er veldig nyttig. Den gjelder () -funksjonen traverserer en matrise eller matrise av kolonnen eller raden og gjelder et oppsummerende funksjon.

Den gjelder () -funksjonen tar fire argumenter:

  • X: Dette er din data - en array (eller matrise).
  • MARGIN: Et numerisk vektor som indikerer dimensjon over hvilke å krysse; 1 betyr rader og 2 betyr kolonner.
  • MORO: Funksjonen for å søke (for eksempel sum eller mener).
  • ... (Prikker): Hvis FUN funksjonen krever noen ekstra argumenter, kan du legge dem til her.

For å illustrere dette, se på den innebygde datasettet Titanic. Dette er en fire-dimensjonal tabell med passasjerdata av skipet Titanic, som beskriver sin hytte klasse, kjønn, alder, og om de overlevde.

> Str (Titanic)
Tabell [1: 4, 1: 2, 1: 2, 1: 2] 0 0 35 0 0 0 17 0 118 154 ...
- Attr (*, "dimnames") = Liste over fire
.. $ Klasse: chr [1: 4] "første" "andre" "tredje" "Crew"
.. $ Sex: chr [1: 2] "Mann" "Female"
.. $ Alder: chr [1: 2] "Child" "Voksen"
.. $ Levde: chr [1: 2] "Nei" "Ja"

For å finne ut hvor mange passasjerer var i hver av sine kabin klasser, må du oppsummere Titanic over sine første dimensjonen, Klasse:

> Gjelder (Titanic, 1, sum)
1. 2. 3. Crew
325 285 706 885

Tilsvarende, for å beregne antall passasjerer i de ulike aldersgruppene, må du søke summen () funksjon over den tredje dimensjonen:

> Gjelder (Titanic, 3, sum)
Barn Voksen
109 2092

Du kan også bruke en funksjon over to dimensjoner samtidig. For å gjøre dette, må du kombinere de ønskede dimensjoner med c () -funksjonen. For eksempel, for å få en oversikt over hvor mange personer i hver aldersgruppe overlevde, gjør du følgende:

> Gjelder (Titanic, c (3, 4), sum)
Levde
Alder Nei Ja
Barn 52 57
Voksen 1438 654