Ik heb een R-code die perfect wordt uitgevoerd in RStudio, maar als ik deze in cmd uitvoer, krijg ik de onderstaande foutmelding .
Installing package into 'C:/Users/Anish/Documents/R/win-library/3.5'
(as 'lib' is unspecified)
Error in contrib.url(repos, "source") :
trying to use CRAN without setting a mirror
Calls: install.packages -> contrib.url
Execution halted
Ik neem mijn pakket op in mijn code als install.packages("plyr")
. Ik heb ook geprobeerd om repo’s en broncode te gebruiken in de functie install.package
.
Antwoord 1, autoriteit 100%
Gebruik
install.packages('plyr', repos = "http://cran.us.r-project.org")
Antwoord 2
De reden is hoogstwaarschijnlijk omdat RStudio R zo configureert dat het weet hoe het moet controleren op systeempakketten en waar het moet worden gedownload als ze niet lokaal beschikbaar zijn, terwijl vanaf de opdrachtregel je R die configuratie waarschijnlijk mist. Controleer met R.home(component = "home")
vanaf de opdrachtregel. Zoek in de geretourneerde map naar een bestand zoals Rprofile
. In mijn systeem werd de regel becommentarieerd (zicht):
$ grep -i "options(repos" /usr/lib64/R/library/base/R/Rprofile
# options(repos = c(CRAN="@CRAN@"))
Ik ondervond dezelfde fout bij het opnieuw uitvoeren van een R-markdowndocument op een andere computer dan de computer waarop ik het oorspronkelijk had geschreven. Om het te repareren heb ik expliciet de repos
optie in de eerste R chuck van het document gezet en toen begon knitr
te werken in plaats van vast te lopen in deze fout. De fout betekent dat uw R-sessie probeert een pakket te installeren met behulp van de contrib.urlpakket, maar de R-taalopties vertellen het niet waar het pakketten vandaan moet halen.
Hier is de regel die ik heb geïntroduceerd in de eerste R-brok van het Rmd-document. Ik kreeg het idee van https://github.com/eddelbuettel/littler/issues /23.
options(repos = list(CRAN="http://cran.rstudio.com/"))
Dit zou je hoe dan ook een beter gedrag geven vanaf de opdrachtregel dan vanuit de RStudio-omgeving in termen van pakketdownloads.
Ik raad aan om de optie bovenaan het script dat je uitvoert in te stellen. Het beste is natuurlijk om de R-taal naar uw verwachtingen te configureren en die configuratie te delen met uw doelgroepgebruikers via het R.profile-bestand, lees hoe je R aanpast.