So führen Sie eine COUNTIF-Funktion in R aus

Von Fabian
Kategorie: R
Lesezeit: 2 Minuten

Oft möchten Sie möglicherweise nur die Anzahl der Zeilen in einem R-Dataframe zählen, die bestimmte Kriterien erfüllen. Glücklicherweise ist dies mit der folgenden grundlegenden Syntax einfach zu bewerkstelligen:

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

Die folgenden Beispiele zeigen, wie diese Syntax in der Praxis für das folgende Dataframe verwendet wird:

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

#Dataframe anzeigen
data

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

Beispiel 1: Anzahl der Zeilen, die einem bestimmten Wert entsprechen

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen der Teamname gleich "Mavs" ist:

sum(data$team == 'Mavs')

[1] 2

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen der Teamname gleich "Mavs" oder "Lakers" ist:

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

[1] 3

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen der Teamname nicht gleich "Lakers" ist:

sum(data$team != 'Lakers')

[1] 4

Beispiel 2: Anzahl Zeilen größer oder gleich einem Wert

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen Punkte größer als 10 sind:

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

[1] 3

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen Rebounds kleiner oder gleich 9 sind:

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

[1] 4

Beispiel 3: Zeilen zwischen zwei Werten zählen

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen Punkte zwischen 10 und 20 liegen:

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

[1] 2

Der folgende Code zeigt, wie die Anzahl der Zeilen gezählt wird, in denen Rebounds zwischen 8 und 10 liegen:

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

[1] 1
Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: