Indholdsfortegnelse:
- Sådan finder du en match
- Et meget bekvemt alternativ til at matche () er funktionen% i%, som returnerer en logisk vektor, der angiver, om der er en kamp.
Video: Sådan arbejder vi med bæredygtighed 2025
Nogle gange er det ikke lige præcis, hvad du vil, at gøre en fuldstændig sammenlægning af dataene i R. I disse tilfælde kan det være mere passende at matche værdier i et opslagstabell. For at gøre dette kan du bruge funktionen match () eller% i%.
Sådan finder du en match
Matchen () -funktionen returnerer matchende positioner for to vektorer eller mere specifikt positionerne for første kampe af en vektor i den anden vektor. For at finde ud af, hvilke store stater der også forekommer i datarammen koldt. stater, kan du gøre følgende:
Som du ser, er resultatet en vektor, der angiver, at kampe blev fundet i stillingerne en, fire og fem, og seks. Du kan bruge dette resultat som et indeks for at finde alle de store stater, der også er kolde tilstande.
Husk at du først skal fjerne NA-værdierne ved at bruge na. udelad (): >> stor. stater [na. omit (indeks)] Navn Area 2 Alaska 566432 6 Colorado 103766 26 Montana 145587 28 Nevada 109889
Sådan giver du mening om% i%
Et meget bekvemt alternativ til at matche () er funktionen% i%, som returnerer en logisk vektor, der angiver, om der er en kamp.
Funktionen% i% er en speciel type funktion kaldet enbinær operatør.
Dette betyder at du bruger det ved at placere det mellem to vektorer, i modsætning til de fleste andre funktioner, hvor argumenterne er i parentes: >> indexindeks [1] SAND SAND FALSK FALSE SAND SAND FALSK FALSK FALSK FALSK FALSK Hvis Du sammenligner dette med resultatet af matchen (), du ser at du har en TRUE værdi for hver ikke-manglende værdi i resultatet af matchen (). Eller for at sætte det i R-kode gør operatøren% i% det samme som følgende kode:
Kampen () -funktionen returnerer indekserne af kampene i
andet
argument for værdierne i argumentetførste
. På den anden side returnerer% i% TRUE for hver værdi i argumentet første , der matcher en værdi i argumentet andet . Argumenternes rækkefølge er vigtig her. Fordi% i% returnerer en logisk vektor, kan du bruge den direkte til at indeksere værdier i en vektor. >> koldt. stater [indeks] Navn Frost 2 Alaska 152 6 Colorado 166 26 Montana 155 28 Nevada 188 Som nævnt tidligere er% i% -funktionen et eksempel på en binær operatør i R. Dette betyder, at funktionen bruges ved at sætte det mellem to værdier, som du ville for andre operatører, såsom + (plus) og - (minus). Samtidig er% i% i infix operatør. En infix operatør i R kan identificeres med procent tegn omkring funktionsnavnet.
Hvis du vil vide, hvordan% i% er defineret, skal du se på detaljerne på Hjælp-siden. Men bemærk at du skal placere anførselstegn omkring funktionsnavnet for at få hjælpssiden, som denne:? "%i%".