Zählung Anzahl der Beobachtungen in R

Manav Narula 25 Februar 2021
Zählung Anzahl der Beobachtungen in R

In realen Situationen haben wir es mit großen Datensätzen zu tun. Diese können Hunderte von Beobachtungen überschreiten, und manchmal kann es notwendig sein, einige spezifische Daten aus dem Ganzen zu extrahieren.

Für solche Situationen gibt es in R ein paar Methoden, die dabei helfen können, die Gesamtheit der Beobachtungen aus diesen gefilterten Daten zu zählen. In diesem Tutorium werden wir mit dem folgenden DataFrame arbeiten.

df <- data.frame( gender = c("M","F","M","M"),
                  age = c(18,19,14,22),
                  stream = c("Arts","Science","Arts","Commerce"))
print(df)

Ausgabe:

  gender age   stream
1      M  18     Arts
2      F  19  Science
3      M  14     Arts
4      M  22 Commerce

Die erste Methode beinhaltet die with() und die sum() Funktionen.

Die Funktion with() gibt einen logischen Vektor basierend auf einem Ausdruck zurück, nachdem sie auf den gesamten Datensatz angewendet wurde, und die Funktion sum() gibt die Summe aller True-Beobachtungen zurück.

Der folgende Codeschnipsel zeigt, wie das funktioniert.

df <- data.frame( gender = c("M","F","M","M"),
                  age = c(18,19,14,22),
                  stream = c("Arts","Science","Arts","Commerce"))
                  
sum(with(df,gender == "M"))
[1] 3

Wir können auch mehrere Ausdrücke mit dem &-Operator addieren.

sum(with(df,gender == "M" & stream == "Commerce"))
[1] 1

Eine weitere Methode ist die Verwendung der Funktion nrow(), die die Anzahl der Zeilen in einem Datensatz zurückgibt. Wir können die gewünschten Beobachtungen aus dem DataFrame herausfiltern, wie unten gezeigt:

nrow(df[df$gender == "M",])
[1] 3

Auch hier können wir mehrere Ausdrücke hinzufügen, wie wir es in der with()-Funktion tun.

nrow(df[df$gender == "M" & df$stream == "Commerce",])
[1] 1

Wir können auch die Funktion filer() aus der Bibliothek dplyr verwenden. Diese gibt eine Teilmenge von Daten basierend auf einer Bedingung zurück. Das folgende Beispiel erklärt wie:

library(dplyr)
nrow(filter(df,gender == "M"))
[1] 3
nrow(filter(df,gender == "M" & stream == "Commerce"))
[1] 1
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Verwandter Artikel - R Data Frame