Python lista-comprensión en R?

Quiero esto en R:

fsC=[read.table(x) for x in Sys.glob('./Trial7/*.csv')] 

es decir, tratar de leer el contenido de cada archivo en un vector separado donde los vectores pertenecen a una estructura de datos.

Pitón

 [file(x, 'r').read() for x in glob.glob('./Trial7/*.csv')] 

o mejor en realidad

 [file(x, 'r') for x in glob.glob('./Trial7/*.csv')] 

pero creo que tienes el punto …

Utilice sapply para “mapear” vectores:

 sapply(Sys.glob('./Trial7/*.csv'), read.table) -> fsc 

Usted tiene dos preguntas aquí. Primero, “dado un vector de nombres de archivos, ¿cómo lees esos archivos en R?”.

Aquí está tu lista de nombres de archivos

 trial7_files <- Sys.glob("Trial7/*.csv") #if you prefer to specify the names using regular expressions, try trial7_files <- dir("Trial7", "\\.csv$") 

Como se señaló anteriormente, lapply es la mejor forma de leer los archivos.

 fsC <- lapply(trial7_files, read.csv) 

Esto le proporciona una lista de marcos de datos y lo lleva a la siguiente pregunta. "¿Cómo se combina una lista de marcos de datos con las mismas columnas en un dataframe?"

La forma estándar de hacerlo es con do.call y rbind . En primer lugar, es útil anotar cuántas filas hay en cada conjunto de datos.

 n_records <- sapply(fsC, nrow) fsC <- do.call(rbind, fsC) 

Ese es su problema resuelto, aunque probablemente desee una columna que le indique de qué archivo proviene cada fila.

 fsC$source <- rep(trial7_files, n_records)