Hoe op te lossen in r: fout bij het selecteren van ongebruikte argumenten


Een fout die je tegen kunt komen in R is:

 Error in select(., cyl, mpg): unused arguments (cyl, mpg) 

Deze fout treedt op wanneer u probeert de functie select() van het dplyr -pakket in R te gebruiken, maar ook het MASS- pakket laadt.

Wanneer dit gebeurt, probeert R in plaats daarvan de functie select() van het MASS-pakket te gebruiken en wordt er een fout gegenereerd.

In deze tutorial wordt precies uitgelegd hoe u deze fout kunt oplossen.

Hoe de fout te reproduceren

Stel dat we de volgende code proberen uit te voeren om een variabele in de mtcars-dataset in R samen te vatten:

 library (dplyr)
library (MASS)

#find average mpg grouped by 'cyl'
mtcars %>%
  select(cyl, mpg) %>%
  group_by(cyl) %>%
  summarize(avg_mpg = mean(mpg))

Error in select(., cyl, mpg): unused arguments (cyl, mpg)

Er treedt een fout op omdat de select()-functie van het MASS-pakket conflicteert met de select()-functie van het dplyr-pakket.

Hoe u de fout kunt oplossen

De eenvoudigste manier om deze fout op te lossen is door R expliciet te vertellen dat hij de functie select() uit het dplyr-pakket moet gebruiken met behulp van de volgende code:

 library (dplyr)
library (MASS)

#find average mpg grouped by 'cyl'
mtcars %>%
  dplyr::select(cyl, mpg) %>%
  group_by(cyl) %>%
  summarize(avg_mpg = mean(mpg))

# A tibble: 3 x 2
    cyl avg_mpg
1 4 26.7
2 6 19.7
3 8 15.1

De code wordt succesvol uitgevoerd omdat dplyr::select R expliciet vertelt om de functie select() uit het dplyr-pakket te gebruiken in plaats van het MASS-pakket.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende fouten in R kunt oplossen:

Oplossing in R: namen komen niet overeen met eerdere namen
Hoe op te lossen in R: de lengte van een langer object is geen veelvoud van de lengte van een korter object
Hoe op te lossen in R: contrasten kunnen alleen worden toegepast op factoren met 2 of meer niveaus

Einen Kommentar hinzufügen

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