Funktionen slice() udvælger rækker (observationer) ud fra deres position. Med funktionen kan man udvælge, slette eller duplikere rækker. Følgende hjælpefunktioner findes til slice():
Hjælpefunktioner (helper functions):
slice_head()ogslice_tail()vælger henholdsvis de første og de sidste rækker.slice_sample()vælger rækker tilfældigt.slice_min()ogslice_max()vælger rækker med de højeste eller laveste værdier for en variabel.
Dette kapitel bruger mpg-data til at demonstrere slice().
library(tidyverse)
data(mpg)Vi begynder med at udvælge de første 10 rækker:
mpg |>
slice(1:10) manufacturer model displ year cyl trans drv cty hwy fl class
1 audi a4 1.8 1999 4 auto(l5) f 18 29 p compact
2 audi a4 1.8 1999 4 manual(m5) f 21 29 p compact
3 audi a4 2 2008 4 manual(m6) f 20 31 p compact
4 audi a4 2 2008 4 auto(av) f 21 30 p compact
5 audi a4 2.8 1999 6 auto(l5) f 16 26 p compact
6 audi a4 2.8 1999 6 manual(m5) f 18 26 p compact
7 audi a4 3.1 2008 6 auto(av) f 18 27 p compact
8 audi a4 quattro 1.8 1999 4 manual(m5) 4 18 26 p compact
9 audi a4 quattro 1.8 1999 4 auto(l5) 4 16 25 p compact
10 audi a4 quattro 2 2008 4 manual(m6) 4 20 28 p compactSletter de første 10 rækker i mpg:
mpg |>
slice(-(1:10))## A tibble: 224 × 11
manufacturer model displ year cyl trans drv cty hwy fl class
1 audi a4 quattro 2 2008 4 auto(s6) 4 19 27 p compact
2 audi a4 quattro 2.8 1999 6 auto(l5) 4 15 25 p compact
3 audi a4 quattro 2.8 1999 6 manual(m5) 4 17 25 p compact
4 audi a4 quattro 3.1 2008 6 auto(s6) 4 17 25 p compact
5 audi a4 quattro 3.1 2008 6 manual(m6) 4 15 25 p compact
6 audi a6 quattro 2.8 1999 6 auto(l5) 4 15 24 p midsize
7 audi a6 quattro 3.1 2008 6 auto(s6) 4 17 25 p midsize
8 audi a6 quattro 4.2 2008 8 auto(s6) 4 16 23 p midsize
9 chevrolet c1500 suburban 2wd 5.3 2008 8 auto(l4) r 14 20 r suv
10 chevrolet c1500 suburban 2wd 5.3 2008 8 auto(l4) r 11 15 e suvEksempler med hjælpefunktionerne:
## De sidste 5 rækker
mpg |>
slice_tail(n = 5)
## De første 5 rækker
mpg |>
slice_head(n = 5)
## Vælg rækkerne med de 20 højeste værdier af displ
mpg |>
slice_max(displ, n = 20)
## Vælg rækkerne med de 20 laveste værdier af displ
mpg |>
slice_min(displ, n = 20)Funktionen filter() bruges til at filtrere rækker ved hjælp af betingelser i stedet for position. Se kapitlet dplyr filter(). Med filter() kan rækker dog også udvælges ud fra position, som det fremgår af følgende eksempel:
## Vælg række 4
mpg |>
filter(row_number() == 4)