Funksjonen row_number() er enkel å bruke. Den lager en numerisk stigende sekvens for radene i en data frame. Funksjonen brukes ofte sammen med mutate() for å lage en numerisk sekvens.
I dette kapittelet skal vi demonstrere funksjonene ved hjelp av data som vi selv genererer direkte i R med funksjonen tibble():
my_data <- tibble(Namn = c("Per", "Per", "Per", "Eva", "Eva", "Zara", "Aziz", "Aziz","Aziz"),
Diagnos = c("I", "I", "C", "C", "D", "D", "D", "E", "E"))
my_data Namn Diagnos
Per I
Per I
Per C
Eva C
Eva D
Zara D
Aziz D
Aziz E
Aziz ENå lager vi variabelen ID_nummer, som er en numerisk sekvens gjennom hele data framen:
my_data |>
mutate(ID_Nummer = row_number()) Namn Diagnos ID_Nummer
Per I 1
Per I 2
Per C 3
Eva C 4
Eva D 5
Zara D 6
Aziz D 7
Aziz E 8
Aziz E 9Vi lager igjen en numerisk sekvens, men nå gruppert etter Namn:
Namn Diagnos ID_Nummer
Per I 1
Per I 2
Per C 3
Eva C 1
Eva D 2
Zara D 1
Aziz D 1
Aziz E 2
Aziz E 3Legg merke til ovenfor at den numeriske sekvensen er separat for hvert navn. Vi kan legge til enda en grupperingsvariabel, noe vi gjør ved å legge til Diagnos som gruppe:
my_data |>
group_by(Namn, Diagnos) |>
mutate(ID_Nummer = row_number()) Namn Diagnos ID_Nummer
Per I 1
Per I 2
Per C 1
Eva C 1
Eva D 1
Zara D 1
Aziz D 1
Aziz E 1
Aziz E 2Legg merke til at radnummereringen er separat for hver Diagnos innenfor hvert Namn.