archivio dati persistente tra le chiamate in PLR
Domanda
Ho un'applicazione Web che parla con R usando PLR quando eseguono test adattivi. Avrei bisogno di trovare un modo per archiviare i dati statici persistentemente tra le chiamate.
Ho un calcolo costoso creando una banca dell'oggetto rispetto a molti economici che ottengono l'articolo successivo dopo ogni presentazione di risposta. Tuttavia, attualmente non riesco a trovare un modo per archiviare il risultato del calcolo costoso in modo persistente.
Mettere nel DB sembra essere un sacco di sovraccarico.
library(catR)
data(tcals)
itembank <- createItemBank(tcals) --this is the expensive call
nextItem(itembank, 0) # item 63 is selected
Ho provato a salvare e caricare il risultato, in questo modo, ma non sembra funzionare, il risultato del secondo avviso è "Bank item".
save(itembank, file="pltrial.Rdata")
pg.thrownotice(itembank)
aaa=load("pltrial.Rdata")
pg.thrownotice(aaa)
Ho provato a salvare e caricare anche l'area di lavoro, ma non ci sono riuscito neanche. Hai idea di come farlo?
Soluzione
Il load
La funzione carica direttamente gli oggetti nell'area di lavoro. Non è necessario assegnare il valore di reso (che è solo il nomi degli oggetti caricati, come hai scoperto). Se fai un ls()
Dopo il caricamento, dovresti trovare il tuo itembank
oggetto seduto lì.