1 votos

Coincidencia de patrones con el catálogo LAS de lidR

La concordancia de patrones se puede utilizar para leer azulejos específicos con readLAScatalog . Por ejemplo:

(als <- readLAScatalog(here("als/2normalized/voxels"), pattern="*.10m.laz"))

Sin embargo, ¿se pueden utilizar sentencias "OR" (o similares) para especificar dos condiciones? Por ejemplo:

(als <- readLAScatalog(here("als/2normalized/voxels"), pattern="*.10m.laz" | pattern="*.25m.laz"))

2voto

Jay Bazuzi Puntos 194

Los archivos LAS pasan muchos de los parámetros a list.files por lo que la misma lógica que se aplica allí debería aplicarse con readLAScatalog.

Así que si puedes construir un expresión regular que coincida sólo con los archivos que quieres, entonces puedes hacerlo. Por ejemplo, creo que esto es lo que quieres:

> list.files(".",pattern="\\.10m\\.laz$|\\.25m\\.laz$")
[1] "a.10m.laz" "a.25m.laz" "b.10m.laz" "b.25m.laz"

Esto coincide con cualquiera de los dos patrones a ambos lados del símbolo |. Observe el uso de \\. para que coincida con un punto literal en la cadena (en una regexp, un . coincide con cualquier carácter único) y el $ para atar la coincidencia al final de la cadena.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X