So beheben sie: fehler in n(): diese funktion sollte nicht direkt aufgerufen werden


Ein Fehler, der in R auftreten kann, ist:

 Error in n(): This function should not be called directly

Dieser Fehler tritt normalerweise auf, wenn Sie versuchen, die Funktion n() des dplyr- Pakets zu verwenden, das plyr- Paket jedoch nach dem dplyr- Paket geladen wird.

In diesem Tutorial wird genau erklärt, wie Sie diesen Fehler beheben können.

So reproduzieren Sie den Fehler

Angenommen, wir haben den folgenden Datenrahmen in R:

 #define data frame
df <- data. frame (team=rep(c('A', 'B'), each= 5 ),
                 points=c(2, 4, 6, 8, 10, 12, 14, 16, 18, 20),
                 assists=c(4, 7, 11, 16, 22, 29, 38, 49, 63, 80))

#view data frame
df

   team points assists
1 to 2 4
2 to 4 7
3 to 6 11
4 to 8 16
5 to 10 22
6 B 12 29
7 B 14 38
8 B 16 49
9 B 18 63
10 B 20 80

Nehmen wir nun an, wir versuchen, die Funktion summary() von dplyr zu verwenden, um die Anzahl der Zeilen zu zählen, gruppiert nach Team:

 library (dplyr)
library (plyr)

#attempt to count rows by team
df %>%
  group_by(team) %>%
  summarize(count = n())

Error in n(): This function should not be called directly 

Wir erhalten eine Fehlermeldung, weil wir das plyr- Paket nach dem dplyr- Paket geladen haben, was Probleme verursacht.

So beheben Sie den Fehler

Um diesen Fehler zu beheben, verwenden Sie einfach dplyr:summarize , sodass R genau weiß, aus welchem Paket Sie die Zusammenfassungsfunktion verwenden möchten:

 library (dplyr)
library (plyr)

#count rows by team
df %>%
  group_by(team) %>%
  dplyr::summarize(count = n())

# A tibble: 2 x 2
  team count
   
1 to 5
2 B 5

Beachten Sie, dass wir dieses Mal die Anzahl der nach Team gruppierten Zeilen ohne Fehler zählen können, da wir dplyr::summarize verwendet haben, um die Zusammenfassung durchzuführen.

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere häufige Fehler in R beheben können:

So beheben Sie in R: Fehler in as.Date.numeric(x): „origin“ muss angegeben werden
So beheben Sie: Fehler in stripchart.default(x1, …): Ungültige Plotmethode
So beheben Sie: Fehler in der Auswertung (Predvars, Daten, Umgebung): Objekt „x“ nicht gefunden

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert