Jak uruchomić funkcję countif w r


Często możesz chcieć policzyć tylko liczbę wierszy w ramce danych R, która spełnia określone kryteria. Na szczęście można to łatwo zrobić, korzystając z następującej podstawowej składni:

 sum(df$column == value, na.rm= TRUE )

Poniższe przykłady pokazują, jak w praktyce zastosować tę składnię na następującej ramce danych:

 #create data frame
data <- data.frame(team=c('Mavs', 'Mavs', 'Spurs', 'Spurs', 'Lakers'),
                   points=c(14, NA, 8, 17, 22),
                   rebounds=c(8, 5, 5, 9, 12))

#view data frame
data

    team points rebounds
1 Mavs 14 8
2 Mavs NA 5
3 Spurs 8 5
4 Spurs 17 9
5 Lakers 22 12

Przykład 1: Policz wiersze o określonej wartości

Poniższy kod pokazuje, jak policzyć liczbę linii, w których nazwa zespołu jest równa „Mavs”:

 sum(data$team == ' Mavs ')

[1] 2

Poniższy kod pokazuje, jak policzyć liczbę linii, w których nazwa zespołu jest równa „Mavs” lub „Lakers”:

 sum(data$team == ' Mavs ' | data$team == ' Lakers ')

[1] 3

Poniższy kod pokazuje, jak policzyć liczbę linii, w których nazwa drużyny nie jest równa „Lakers”:

 sum(data$team != ' Lakers ')

[1] 4

Przykład 2: liczenie wierszy większych lub równych określonej wartości

Poniższy kod pokazuje, jak policzyć liczbę linii, w których punkty są większe niż 10:

 sum(data$points > 10, na.rm= TRUE )

[1] 3

Poniższy kod pokazuje, jak policzyć liczbę wierszy, w których odbicia są mniejsze lub równe 9:

 sum(data$rebounds <= 9, na.rm= TRUE )

[1] 4

Przykład 3: Zlicz linie pomiędzy dwiema wartościami

Poniższy kod pokazuje, jak policzyć liczbę linii, w których punkty mieszczą się w przedziale od 10 do 20:

 sum(data$points > 10 & data$points < 20, na.rm= TRUE )

[1] 2

Poniższy kod pokazuje, jak policzyć liczbę wierszy, w których odbicia wynoszą od 8 do 10:

 sum(data$rebounds > 8 & data$rebounds < 10, na.rm= TRUE )

[1] 1

Dodatkowe zasoby

Jak liczyć obserwacje na grupę w R
Jak grupować i podsumowywać dane w R

Dodaj komentarz

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