Jak korzystać z funkcji wycinania () w r


Funkcja cut() w R może służyć do wycinania zakresu wartości do pojemników i określania etykiet dla każdego pojemnika.

Ta funkcja wykorzystuje następującą składnię:

wycinanie(x, przerwy, etykiety = NULL, …)

Złoto:

  • x : nazwa wektora
  • breaks : Liczba przerw do wykonania lub wektor punktów przerwania
  • etykiety : etykiety dla wynikowych pojemników

Poniższe przykłady pokazują, jak używać tej funkcji w różnych scenariuszach z następującą ramką danych w R:

 #create data frame
df <- data. frame (player=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'),
                 points=c(4, 7, 8, 12, 14, 16, 20, 26, 36))

#view data frame
df

  player points
1 to 4
2 B 7
3 C 8
4 D 12
5 E 14
6 F 16
7 G 20
8:26 a.m.
9 I 36

Przykład 1: Wytnij wektor na podstawie liczby przerw

Poniższy kod pokazuje, jak użyć funkcji cut() do utworzenia nowej kolumny o nazwie kategoria , która przecina kolumnę punktów na grupy o czterech równych rozmiarach:

 #create new column that places each player into four categories based on points
df$category <- cut(df$points, breaks= 4 )

#view updated data frame
df

  player points category
1 to 4 (3.97.12]
2 B 7 (3.97.12]
3 C 8 (3.97.12]
4 D 12 (3.97.12]
5 E 14 (12.20]
6 F 16 (12.20]
7 G 20 (12.20]
8:26 a.m. (20.28]
9 I 36 (28.36]

Ponieważ określiliśmy breaks=4 , funkcja cut() dzieli wartości w kolumnie punktowej na grupy o czterech równych rozmiarach.

Oto jak funkcja cut() to zrobiła:

  • Najpierw znalazł różnicę pomiędzy największą i najmniejszą wartością w kolumnie punktów (36 – 4 = 32).
  • Następnie dzieli tę różnicę przez 4 (32/4 = 8)
  • Rezultatem są cztery pojemniki o szerokości 8 każdy.

Uwaga : najniższy interwał wynosi 3,97 zamiast 4 ze względu na następującą funkcjonalność z dokumentacji cięcia() :

Jeśli przerwy są określone jako pojedyncza liczba, zakres danych jest dzielony na fragmenty pauz o równej długości, a następnie zewnętrzne granice są przesuwane o 0,1% od zakresu, aby zapewnić, że wartości odstające mieszczą się w obu przedziałach pauz.

Przykład 2: Wektor cięcia oparty na określonych punktach przerwania

Poniższy kod pokazuje, jak użyć funkcji cut() do utworzenia nowej kolumny o nazwie kategoria , która przecina kolumnę punktów w oparciu o wektor określonych punktów przerwania:

 #create new column based on specific break points
df$category <- cut(df$points, breaks=c(0, 10, 15, 20, 40))

#view updated data frame
df

  player points category
1 to 4 (0.10]
2 B 7 (0.10]
3 C 8 (0.10]
4 D 12 (10.15]
5 E 14 (10.15]
6 F 16 (15.20]
7 G 20 (15.20]
8:26 a.m. (20.40)
9 I 36 (20.40]

Funkcja cut() klasyfikowała każdego gracza na kategorie w oparciu o podany przez nas wektor punktów przerwania.

Przykład 3: Wytnij wektor, używając określonych punktów przerwania i etykiet

Poniższy kod pokazuje, jak użyć funkcji cut() do utworzenia nowej kolumny o nazwie kategoria , która odcina kolumnę punktów na podstawie wektora określonych punktów przerwania z niestandardowymi etykietami:

 #create new column based on values in points column
df$category <- cut(df$points,
                   breaks=c(0, 10, 15, 20, 40),
                   labels=c(' Bad ', ' OK ', ' Good ', ' Great '))

#view updated data frame
df

  player points category
1 A 4 Bad
2 B 7 Bad
3 C 8 Bad
4 D 12 OK
5 E 14 OK
6 F 16 Good
7 G 20 Good
8:26 A.M. Great
9 I 36 Great

Nowa kolumna kategorii klasyfikuje każdego gracza jako złego, OK, dobrego lub doskonałego w oparciu o odpowiednią wartość w kolumnie punktów .

Uwaga : liczba etykiet musi być zawsze o jeden mniejsza niż liczba punktów przerwania, aby uniknąć następującego błędu:

 Error in cut.default(df$points, breaks = c(0, 10, 15, 20, 40), labels = c("Bad",: 
  lengths of 'breaks' and 'labels' differ

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak korzystać z innych typowych funkcji w R:

Jak korzystać z funkcji tabulate() w R
Jak korzystać z funkcji split() w R
Jak korzystać z funkcji match() w R
Jak korzystać z funkcji replikacji () w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *