R - write_parquet en bucle

0

Pregunta

fwrite es un bucle a lo largo de muchos .csv los archivos en el directorio de trabajo, pero cuando escribo un .parquet se sobrescribe cada vez.

He intentado varios métodos, básicamente estoy tratando de usar el nombre de archivo que yo para mantener el .csv nombre de archivo como se muestra a continuación sin sobrescribirlo.

rm(list = ls())
gc()

# Set up environment #
require("data.table")
require("arrow")

# Set directory to data, define files #
setwd("E:/TransferComplete/07/")

files <- list.files(pattern = "csv")

for (i in files){  setwd("E:/TransferComplete/07/")
loopStart <- Sys.time()
  
  bb <- fread(i,header = TRUE,sep = ",", data.table = FALSE, stringsAsFactors = FALSE,
                select = c("x","y","z"))
  gc()
  
  
  write_parquet(bb,
  'E:/P/i.parquet')
  
  
  loopEnd <- Sys.time()
  loopTime <- round(as.numeric(loopEnd) - as.numeric(loopStart), 0)
}
csv loops parquet r
2021-11-23 23:08:00
2

Mejor respuesta

1

Reemplazar esta

write_parquet(bb,
  'E:/P/i.parquet')

a este

write_parquet(bb,paste0('E:/P/',i,'.parquet'))
2021-11-24 00:31:37
1

Estaban muy cerca, en su pregunta. Cuando estés escribiendo el .parquet, usted necesita para separar el i al escribir el archivo o el bucle se va a mantener la escritura de un archivo llamado i.parquet.

write_parquet(bb,paste0('E:/P/',i,'.parquet'))
2021-11-24 00:40:17

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................