img - R lista de archivos con mĂșltiples condiciones
tags$style shiny (4)
Quiero listar todos los archivos en un directorio que cumpla ciertas condiciones (fecha y moneda). Entonces, con solo una condición el pattern
argumento en list.files
funciona bien:
file.ls <- list.files(path=''~/DATA/PiP/Curvas/'',pattern=''20130801'')
Para múltiples condiciones he intentado:
file.ls <- list.files(path=''~/DATA/PiP/Curvas/'',pattern=c(''20130801'',''USD''))
Pero tuvo el mismo resultado que el primero. ¿Hay una manera de tener múltiples criterios en el argumento de pattern
de list.files
?
Aquí está:
file.ls2 = intersect(list.files(pattern = "20130801"), list.files(pattern = "USD"))
En línea con Baptiste y la respuesta en esta publicación ( argumento de patrón list.files en R, uso extendido de expresiones regulares ), puede usar la siguiente expresión:
file.ls <- list.files(path=''~/DATA/PiP/Curvas/'',
pattern=glob2rx("*20130801*USD*"))
Donde *
es el comodín.
Filter(function(x) grepl("USD", x), file.ls)
alternativamente, puedes construir una expresión regular para un patrón que solo coincida con los nombres de archivo que contienen ambas cadenas, pero eso es un juego de magos.
file.ls <- list.files(path=''~/DATA/PiP/Curvas/'',pattern="20130801|USD")