2013-04-26 10 views
9

Gibt es eine Möglichkeit für das Dialogfenster, das nach file.choose() angezeigt wird, um einen benutzerdefinierten Titel ähnlich X <- menu(files, graphics=TRUE, title="Choose file X") anzuzeigen?r - file.choose() Anpassen des Dialogfensters

Jetzt erfordert mein Code mehrere Dateien geladen werden.

X <- read.csv(file.choose()) 
Y <- read.csv(file.choose()) 
Z <- read.csv(file.choose()) 

Im Moment bin ich meine (human) Speicher nur mit wissen, welche für das erste Fenster zu wählen, Dateien, das zweite Fenster, und das dritte Fenster, aber ich würde das Fenster gerne zeigen, welche Objekt XY oder Z Die Datei des aktuellen Fensters wird importiert. Ich kann das Fenster beiseite schieben, um zu sehen, welche Codezeile die Konsole gerade macht, aber das scheint ziemlich unelegant zu sein.

Ich habe versucht X <- read.csv(file.choose(new=c("Choose X"))) zum Beispiel, aber das scheint nichts zu tun.

Antwort

6

Eine Alternative:

library(tcltk) 
X <- read.csv(tk_choose.files(caption = "Choose X")) 

Sehen Sie, dass die Funktion auch mehrere Dateien in einem Aufruf zur Auswahl verwendet werden kann. CTRL Dazu halten, wenn mehr als eine Datei auswählen:

XYZ.list <- lapply(tk_choose.files(caption = "Choose X, Y, and Z"), read.csv) 

aber die Auswahl Ordnung erhalten ist nicht so dass Sie drei separate Anrufe halten möchten, wenn das für Sie besser funktioniert.

3

Sie können choose.files verwenden, die für die eigenen Titel ermöglicht und auch Standard-Dateinamen (default), Dateityp-Filterung (filters) und Mehrfachselektion (multi):

choose.files(default = "", caption = "Select files", 
      multi = TRUE, filters = Filters, 
      index = nrow(Filters)) 

Kontrolle der Hilfe choose.files ;)

+5

Windows-spezifische ... –