R: "read" un archivo txt de una URL
Estoy interesado en ver si es posible cargar directamente (en R) archivo txt de una url en lugar de descargarlo y luego importarlo.
He encontrado este post aquí: Acceder a una URL y leer datos con R
Aparentemente es posible hacer esto con archivos csv. ¿Es posible hacer lo mismo para los archivos txt?
Intenté adaptar el código de este post de flujo de pila para el siguiente sitio web: https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt
myfile <- read.txt(url("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt"))
Pero no parece estar funcionando.
¿Estoy haciendo algo mal? ¿O no es posible cargar directamente un archivo txt de una url a R?
Gracias.
Pregunta hecha hace 3 años, 4 meses, 28 días - Por coderconqueror
4 Respuestas:
-
La cuestión es que
read.txt
no existe.?read.txt
No hay documentación para ‘read.txt’ en paquetes y bibliotecas especificados: ¿Podrías probar? ’
Debería ser
read.table
(sin necesidad de paquetes)myfile <- read.table(url("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt"))
- ¡Fuera!
dim(myfile) #[1] 10000 1 head(myfile) # V1 #1 0.12206400 #2 0.04719682 #3 -0.01833035 #4 -0.08194958 #5 -0.13422158 #6 -0.18542675
Respondida el Dec 18, 2020 a las 22:31 - por syntaxsenseie7e4
Votos positivos: 0 | Votos negativos: 0 -
Prueba con
data.table
funciónfread()
(una de las funciones más rápidas para la carga de datos):library(data.table) #Load myfile <- fread("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt")
Producto (algunos filas):
head(myfile) V1 1: 0.12206400 2: 0.04719682 3: -0.01833035 4: -0.08194958 5: -0.13422158 6: -0.18542675
Puede envolverlo como dataframe usando
as.data.frame()
o:#Load 2 myfile <- fread("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt",data.table = F)
Respondida el Dec 18, 2020 a las 22:37 - por techinnovator
Votos positivos: 0 | Votos negativos: 0 -
El error en tu código radica en la función
read.txt()
, ya que no es una función válida en R. Para leer un archivo de texto desde una URL en R, puedes usar la funciónreadLines()
de la siguiente manera:R url <- "https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt" myfile <- readLines(url)
Con esto, podrás leer el contenido del archivo de texto directamente desde la URL especificada. ¡Espero que esto te sea útil! Si tienes alguna otra pregunta, no dudes en decírmelo.
Respondida el Dec 19, 2020 a las 22:30 - por Gpt
Votos positivos: 0 | Votos negativos: 0 -
Sí, es posible cargar directamente un archivo txt desde una URL en R sin descargarlo primero. El código que proporcionaste es casi correcto, pero hay un pequeño error: deberías usar la función
readLines
en lugar deread.txt
. Aquí tienes el código corregido:myfile <- readLines("https://mantas.info/wp/wp-content/uploads/simple_esn/MackeyGlass_t17.txt")
Esto leerá el archivo txt de la URL proporcionada y lo almacenará en el objeto
myfile
como un vector de líneas. Puedes acceder a las líneas individuales del archivo usando el operador de indexación[]
. Por ejemplo, para obtener la primera línea del archivo, puedes usar:myfile[1]
También puedes usar la función
strsplit
para dividir cada línea en una lista de palabras:words <- strsplit(myfile, " ")
Esto creará una lista de listas, donde cada lista interna contiene las palabras de una línea del archivo.
Respondida el Dec 19, 2020 a las 22:31 - por Gemini
Votos positivos: 0 | Votos negativos: 0