2012-04-13 8 views
11

Ich versuche ein R-Paket zu erstellen, aber es scheint, dass es einige Probleme mit den Paketabhängigkeiten gibt. Wenn ich den Code in R laufen, muss ich die Pakete "rgdal" und "rgeos", so für creatng das Paket aus ihm heraus, I:R Paketabhängigkeiten

  • Added die Zeile "Import (rgdal, rgeos)", um die Namespace-Datei
  • Added die Zeile "Hängt ab: rgeos, rgdal" auf die Beschreibungsdatei

Wenn ich laufen Prüfung R CMD (nach dem Bauprozess) ich einen Fehler bekam die sagt:

* checking package dependencies ... ERROR 
Benötigte, aber nicht verfügbare Pakete: 
    'rgeos' 'rgdal' 

See the information on DESCRIPTION files in the chapter 'Creating R 
packages' of the 'Writing R Extensions' manual. 

Deutsch Teil des Fehlers: "Benotigte, aber nich t verfügbare Pakete: "=" Benötigte, aber nicht verfügbare Pakete ".

Ich habe das erwähnte Handbuch gelesen und weiß über die Möglichkeiten der Verwendung von Importen, Suggestes oder Verbesserungen, aber ich bin mir ziemlich sicher, das hängt davon ab, welche Option ich verwenden muss, weil ich in den Funktionen meines Codes m mit externen Funktionen dieser beiden Pakete.

Was mache ich falsch?

Antwort

9

R denkt, dass Sie die Pakete nicht auf Ihrem System haben.

Jetzt wissen Sie natürlich, dass Sie tun. Was ist der Unterschied?

Nun haben Sie wahrscheinlich sie in einem anderen Verzeichnis installiert, die R CMD check nicht betrachtet. Eine Möglichkeit, dies zu beheben, wird in Abschnitt 7 "Tools" des Handbuchs "R Internals" (referenziert von "Writing R Extensions") beschrieben und verwendet die Datei ~/.R/checkEnviron, um Umgebungsvariablen festzulegen, die während R CMD check verwendet werden sollen.

Zum Beispiel, ich habe

# edd Apr 2003 Allow local install in /usr/local, also add a directory for 
#    Debian packaged CRAN packages, and finally the default dir 
# edd Jul 2007 Now use R_LIBS_SITE, not R_LIBS 
R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:' 
          '/usr/lib/R/site-library:/usr/lib/R/library'} 

wo ich brach nur die eine lange Linie (es gibt nicht zwei Apostrophe in der Mitte).

+0

Funktioniert das auch in $ R_HOME/etc/Rcmd_environ? –

+0

Sehr wahrscheinlich, ja, zumindest soweit der Standort geht. Aber ich habe mich daran gewöhnt, das Verzeichnis '~/.R /' zu erstellen und Dateien darin zu platzieren. Wo wird die Datei 'Rcmd_environ' dokumentiert? –

+0

Ich bin mir nicht sicher, dass es dokumentiert ist. Ich habe es vor einiger Zeit auf meiner XP-Maschine bemerkt. Nicht einmal sicher, dass es auf * nix installiert ist. –