Domanda

Vorrei leggere un file binario - di lunghezza indeterminata -. Direttamente da un URL in R. Utilizzando readBin di leggere da un URL, senza specificare la dimensione del file, non funziona

 anImage <- readBin('http://user2010.org/pics/useR-large.png','raw')

C'è un altro approccio che permetterebbe questo?

È stato utile?

Soluzione

Questo scaricherà il file nella directory di lavoro, ma non direttamente in memoria.

download.file('http://user2010.org/pics/useR-large.png', 'anImage.png')

Il pacchetto Rcurl può anche fare quello che vuoi. (Link non pubblicato a causa di così restrizioni)

Altri suggerimenti

Una soluzione semplice per impostare se 'n' essere ragionevolmente grande, leggere il file, verificare la presenza di possibili troppo pieno, e riprovare, se necessario.

N <- 1e7
repeat
{
   anImage <- readBin(filename, 'raw', n=N)
   if(length(anImage) == N) N <- 5 * N else break
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top