Jak używać funkcji all() i any() w r (z przykładami)


Funkcje all() i any() w R można wykorzystać do sprawdzenia, czy wszystkie lub niektóre wartości w wektorze mają wartość PRAWDA dla wyrażenia.

Funkcje te korzystają z następującej składni:

 #check if all values in x are less than 10
all(x < 10)

#check if any values in x are less than 10
any(x < 10)

Poniższe przykłady pokazują, jak wykorzystać każdą funkcję w praktyce.

Przykład 1: Użyj all() i any() z wektorem

Możemy użyć następujących funkcji all() i any() , aby sprawdzić, czy niektóre lub wszystkie wartości w wektorze są mniejsze niż 10:

 #define vector of data values
data <- c(3, 4, 4, 8, 12, 15)

#check if all values are less than 10
all(data < 10)

[1] FALSE

#check if any values are less than 10
any(data < 10)

[1] TRUE

Funkcja all() ma wartość FALSE , ponieważ wszystkie wartości w wektorze są nie mniejsze niż 10.

Funkcja any() ma wartość TRUE , ponieważ co najmniej jedna wartość w wektorze jest mniejsza niż 10.

Przykład 2: Użyj all() z wartościami NA

Jeśli użyjemy funkcji all() z wektorem mającym wartości NA, w rezultacie możemy otrzymać NA :

 #define vector of data values with some NA values
data <- c(3, 4, 4, 8, NA, NA)

#check if all values are less than 10
all(data < 10)

[1] NA

Aby tego uniknąć, musimy podać na.rm=TRUE , aby najpierw usunąć wartości NA z wektora, a następnie sprawdzić, czy wszystkie wartości spełniają warunek:

 #define vector of data values with some NA values
data <- c(3, 4, 4, 8, NA, NA)

#check if all values are less than 10 (and ignore NA values)
all(data < 10, na. rm = TRUE )

[1] TRUE

Funkcja all() ma teraz wartość TRUE , ponieważ każda wartość w wektorze jest mniejsza niż 10, zakładając, że ignorujemy wartości NA.

Przykład 3: Użyj all() i any() z kolumnami ramki danych

Możemy także użyć funkcji all() i any() do oceny wyrażeń kolumn ramki danych.

Załóżmy na przykład, że mamy następującą ramkę danych w R:

 #define data frame
df <- data. frame (points=c(30, 22, 19, 20, 14, NA),
                 assists=c(7, 8, 13, 13, 10, 6),
                 rebounds=c(8, 12, NA, NA, 5, 8))

#view data frame
df

  points assists rebounds
1 30 7 8
2 22 8 12
3 19 13 NA
4 20 13 NA
5 14 10 5
6 NA 6 8

Możemy użyć funkcji all() i any() do oceny różnych wyrażeń dla wartości w kolumnie „odbicia”:

 #check if all values are less than 10 in rebounds column
all(df$rebounds < 10, na. rm = TRUE )

[1] FALSE

#check if any values are less than 10 in rebounds column
any(df$rebounds < 10, na. rm = TRUE )

[1] TRUE

#check if there are any NA values in rebounds column
any(is. na (df$rebounds))

[1] TRUE

Z wyniku możemy zobaczyć:

  • Wszystkie wartości w kolumnie odrzuceń są nie mniejsze niż 10.
  • Co najmniej jedna wartość w kolumnie zbiórek jest mniejsza niż 10.
  • W kolumnie zbiórek znajduje się co najmniej jedna wartość NA.

Powiązane: Jak używać is.na w R (z przykładami)

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:

Jak dodać kolumnę do ramki danych w R
Jak dodać pustą kolumnę do ramki danych w R
Jak posortować ramkę danych według kolumny w R

Dodaj komentarz

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