Hvordan navn verdiene i vektorer i R

December 31  by Eliza

Ofte er elementene i vektorer er referert til ved sine posisjoner - det vil si, x [5] viser til det femte element i vektoren x. En svært kraftig funksjon i R, derimot, gir navn til elementene i en vektor, som lar deg å referere til elementene ved navn.

Du kan bruke disse navngitte vektorer i R for å knytte tekstverdier (navn) med en annen type verdi. Deretter kan du referere til disse verdiene ved navn i tillegg til å plassere i listen. Dette formatet har et bredt spekter av applikasjoner - for eksempel navngitte vektorer gjør det enkelt å lage oppslagstabeller.

Hvordan R heter vektorer jobbe

For å illustrere navngitte vektorer, ta en titt på de innebygde datasettet øyer, en navngitt vektor som inneholder arealet av verdens 48 største landmasser (kontinenter og store øyer). Man kan undersøke dets struktur med str (), som følger:

> str (øyer)
Oppkalt num [01:48] 11506 5500 16988 2968 16 ...
- Attr (*, "navn") = chr [01:48] "Afrika" "Antarctica" "Asia" "Australia" ...

R rapporterer strukturen av øyene som en navngitt vektor med 48 elementer. I den første linje av resultatene av str (), ser man verdiene av de første elementer av øyer. På den andre linjen, R rapporterer at den navngitte vektor har en attributt som inneholder navn og rapporter som de første elementene er "Afrika", "Antarktis", "Asia", og "Australia".

Fordi hvert element i vektoren har en verdi, så vel som et navn, nå kan du undergruppe vektoren ved navn. Å hente størrelser av Asia, Afrika og Antarktis, bruker du følgende:

> Øyer [c ("Asia", "Afrika", "Antarktis")]
Asia Afrika Antarktis
16988 11506 5500

Du bruker navnene () funksjon for å hente navnene i en navngitt vektor:

> Navn (øyer) [1: 9]
[1] "Afrika" "Antarctica" "Asia"
[4] "Australia" "Axel Heiberg" "Baffin"
[7] "banker" "Borneo" "Britain"

Denne funksjonen gjør at du kan gjøre alle slags interessante ting. Tenk deg at du ønsket å vite navnene på de seks største øyene. For å gjøre dette, vil du hente navnene på øyene etter sortering det i synkende rekkefølge:

> Navn (sorterings (øyer, mink = sant) [1: 6])
[1] "Asia" "Afrika" "Nord-Amerika"
[4] "Sør-Amerika" "Antarctica" "Europa

Opprette og tilordne navngitte vektorer i R

Du bruker oppdraget operator (<-) for å tildele navn til vektorer i mye på samme måte som du tilordne verdier til karakter vektorer.

Tenk deg at du ønsker å opprette en navngitt vektor med antall dager i hver måned. Først oppretter en numerisk vektor som inneholder antall dager i hver måned. Deretter bruker du den innebygde datasettet month.name for navnene i måneden, som følger:

> Month.days <- c (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31)
> Navn (month.days) <- month.name
> month.days
Januar Februar Mars April
31 28 31 30
Mai Juni Juli August
31 30 31 31
September Oktober November Desember
30 31 30 31

Nå kan du bruke denne vektor for å finne navnene på de månedene med 31 dager:

> Navn (month.days [month.days == 31])
[1] "Januar" "March" "May"
[4] "July" "August" "October"
[7] "desember"

Denne teknikken fungerer fordi du undergruppe month.days å returnere bare de verdiene som month.days lik 31, og deretter du hente navnene på den resulterende vektoren.

Den doble likhetstegn (==) viser en test for likestilling. Pass på å ikke bruke enkelt likhetstegn (=) for likestilling testing. Ikke bare vil en enkelt likhetstegn ikke fungere, men det kan ha merkelige bivirkninger fordi R tolker en enkelt likhetstegn som et oppdrag. Med andre ord, operatøren = i mange tilfeller er den samme som <-.