2012-03-12 9 views
13

Nei miei script, che attualmente sto creando in un pacchetto, sono necessarie numerose "impostazioni globali". Attualmente queste impostazioni sono in variabili globali e di solito sono state modificate modificando direttamente lo script. (Lo script produce voci per un database e devi modificare elementi come "nome autore" e altre parti "costanti" personalizzate delle voci.)Meccanismo standard per disporre di opzioni specifiche del pacchetto in R?

Ancora, attualmente ho usato const_author <- "Meow The Scientist Cat" et al. Posso, naturalmente, lasciare questo esattamente così com'è, ed esportare tutte le variabili globali, in modo che l'utente possa impostarle su qualsiasi cosa. Tuttavia, questo è brutto e inquina lo spazio dei nomi.

Qual è il metodo standard in R per rendere tali impostazioni disponibili all'utente? Usando le opzioni()? E a che punto del pacchetto dovrebbero essere caricate queste opzioni?

Forse utilizzando una funzione come settingsTemplate(filename) che esporta un file con le impostazioni predefinite, che l'utente può personalizzare; e deve cercare il file o loadSettings (nomefile) prima di usare gli script?

risposta

8

Si potrebbe creare qualcosa di simile a XCMS: in zzz.R chiamiamo .setXCMSOptions (da init.R sul pacchetto di carico, dove XCMS opzioni specifiche sono inseriti nelle generici opzioni Bioc:

getOption("BioC")$xcms 

si potrebbe fornire metodi getter e setter per le tue opzioni

+0

Grazie, questo è quello che stavo cercando :) – meow