Importante
La traducción es un esfuerzo comunitario puede unirse. Esta página está actualmente traducida en |progreso de traducción|.
17.11. Calculadora vectorial
Nota
En esta lección veremos cómo agregar nuevos atributos a una capa vectorial basado en una expresión matemática, utilizando la calculadora de vectores.
We already know how to use the raster calculator to create new raster layers using mathematical expressions. A similar algorithm is available for vector layers, and generates a new layer with the same attributes of the input layer, plus an additional one with the result of the expression entered. The algorithm is called Field calculator and has the following parameters dialog.
Nota
En las versiones más recientes de Procesamiento de la interfaz ha cambiado considerablemente, es más potente y fácil de usar.
Aquí hay algunos ejemplos del uso de este algoritmo.
First, let’s calculate the population density of white people in each polygon, which represents a census.
We have two fields in the attributes table that we can use for that, namely WHITE and SHAPE_AREA.
We just have to divide them and multiply by one million (to have density per square km),
so we can use the following formula in the corresponding field:
( "WHITE" / "SHAPE_AREA" ) * 1000000
El diálogo de parámetros debe ser llenado como se muestra a continuación.
This will generate a new field named WHITE_DENS.
Ahora vamos a calcular la relación entre los campos MALES y FEMALES para crear uno nuevo que indique si la población masculina es numéricamente predominante sobre población femenina.
Enter the following formula:
"MALES" / "FEMALES"
This time the parameters window should look like this before pressing the OK button.
En la versión anterior, ya que ambos campos son de tipo entero, el resultado se trunca a un entero. En este caso, la fórmula debería ser: 1.0 * "MACHOS" / "MUJERES", para indicar que queremos un resultado de número punto flotante.
Podemos utilizar las funciones condicionales para tener un nuevo campo con cadenas de texto male o female en lugar de los valor de la relación, mediante la siguiente fórmula:
CASE WHEN "MALES" > "FEMALES" THEN 'male' ELSE 'female' END
La ventana de parámetros debería tener este aspecto.
A python field calculator is available in the Advanced Python field calculator, which will not be detailed here.