Muestras aleatorias y permutaciones con sample en lenguaje R

La función sample permite construir muestras aleatorias y permutaciones en lenguaje R. Existen muchas aplicaciones de ésto pero en la siguiente entrada voy a ejemplificar el lanzamiento de un dado 1.000.000 de veces. Si éste no está “cargado”, la probabilidad de que salga cualquier número del 1 al 6 es la misma e igual a 1/6 (0.166666…). La sintaxis del comando puede ser averiguada con help(sample) y se puede resumir como sigue:

Sigue leyendo

Publicado en Lenguaje R, Software Libre | 1 Comentario

Cómo usar el Raster Calculator desde la Python Console

Hace pocos días, intentando solventar la carencia del operador logaritmo en el raster calculator de QGIS, encontré el script gdal_calc.py que permite usar operadores que no están disponibles en éste de una manera fácil y expedita. Por otra parte, me preguntaba si esta falta podría ser resuelta apelando al uso del raster calculator directamente desde la consola de PyQGIS. La respuesta es negativa pero por lo menos encontré documentación que permite el uso del raster calculator desde la Python Console. Las clases son la QgsRasterCalculator y la QgsRasterCalculatorEntry del módulo de PyQGIS qgis.analysis.

Sigue leyendo

Publicado en PyQGIS, Software Libre | Deja un comentario

Script de Python (consola de GRASS-QGIS) para determinar sucesivamente NDVI, SAVI, LAI, εNB y temperatura superficial (Ts) en Ubuntu

Hace unos meses establecí un procedimiento para determinar sucesivamente NDVI, SAVI, LAI y εNB mediante un script de python empleando las bandas 3 y 4 de Landsat 5. Los valores de εNB (emisividad superficial) son usados en el cálculo de la temperatura superficial (Ts) empleando la banda térmica (b6) de Landsat. Según el manual del SEBAL se determinan mediante la siguiente expresión (ecuación de Plank modificada):

Sigue leyendo

Publicado en Código Python, GRASS, QGIS, Software Libre | Deja un comentario

Cómo transformar Números Digitales (DN) en Radianzas (L) para bandas Landsat

La radianza espectral (Lλ) para cada banda Landsat 5 o Landsat 7 puede determinarse mediante la siguiente expresión:

radianza1_1

Sigue leyendo

Publicado en GDAL, QGIS, Software Libre | Deja un comentario

Cómo solventar la falta del operador logaritmo en el raster calculator de QGIS con gdal_calc.py

El operador logaritmo no se encuentra, por ahora, en las opciones ofrecidas por el raster calculator de QGIS; aunque en el manual del proyecto se anuncian que en éste habrá pronto nuevas inclusiones de operadores. Este es necesario en el álgebra de mapas que involucra, por ejemplo, la transformación de radianzas en temperatura de brillo. Una manera de solventar esta carencia es con la gdal utility denominada gdal_calc.py que permite hacer álgebra de mapas a través de la línea de comandos. Sin embargo, a pesar de tener instalada gdal en mi sistema Ubuntu esta opción no aparece listada.

Sigue leyendo

Publicado en GDAL, QGIS, Software Libre | 1 Comentario

Cómo determinar la matriz de varianza-covarianza entre bandas ráster mediante lenguaje R

La varianza es una medida de variabilidad o dispersión de los datos. Matemáticamente, corresponde al promedio de las desviaciones al cuadrado de los valores de una serie de datos con relación a la media. Por otra parte, la covarianza es una medida de la extensión en la cual los elementos constituyentes de dos series diferentes de datos se mueven en la misma dirección. Las varianzas y covarianzas frecuentemente se despliegan juntas en una matriz de varianza-covarianza (matriz de covarianza) donde las varianzas aparecen a lo largo de la diagonal principal y las covarianzas fuera de ésta. No obstante, esta matriz es simétrica por lo que los elementos aij son iguales a los elementos aji.

Sigue leyendo

Publicado en Lenguaje R, Software Libre | Deja un comentario

Cómo reproyectar un shapefile usando PyQGIS

Según el PyQGIS developer cookbook v. 2.0, las transformaciones entre diferentes sistemas de referencia espacial (CRS) se hacen a través de la clase QgsCoordinateTransform. El procedimiento sugiere crear los CRS fuente y destino y contruir la instancia de QgsCoordinateTransform con ellos. Entonces, se repite numerosas veces la llamada a la función transform() hasta culminar el proceso.

Sigue leyendo

Publicado en Código Python, PyQGIS, Software Libre | 2 comentarios