Conditional field calculator

From AWF-Wiki
(Difference between revisions)
Jump to: navigation, search
 
(8 intermediate revisions by one user not shown)
Line 1: Line 1:
We would like to use the European Urban Atlas as an information vector layer to extract reference data for an automated actual land cover classification. The original Urban Atlas classifcation scheme has 37 classes. We need to select and merge some classes and simplifying the scheme to be usable as training data input for land cover classification.
+
We would like to use the European Urban Atlas as an information vector layer to automatically extract reference data for an actual land cover classification. The original Urban Atlas classifcation scheme has 37 classes. We need to define some strata for sampling training data for land cover classification.
 
# Click {{button|text=Add vector layer}} [[Image:QGIS_2.0_addvect.png|20px]] and select file ''geodata/vector/Subset-Goe_DE021L1_GOTTINGEN_UA2012_UTM32N.shp''.
 
# Click {{button|text=Add vector layer}} [[Image:QGIS_2.0_addvect.png|20px]] and select file ''geodata/vector/Subset-Goe_DE021L1_GOTTINGEN_UA2012_UTM32N.shp''.
# In the processing toolbar, type {{typed|text=Field calculator}} to browse for the {{mitem|text=QGIS --> Vector Table Tools --> Field calculator)}} and open it.
+
# This file still contains geometry errors (ring self-intersections). Check with {{mitem|text=Vector --> Geometry Tools --> Check Validity}} Field calculator}}
# Formulate 5 conditional operations to reclassify the column '''CODE2012''' creating a new column named '''C_ID''.
+
# Repair the vector file: {{mitem|text=Processing Tools --> Vector geometry --> Fix geometries}}. Save the output fixed geometry file as Geppackage with the extension '''*.gpkg'''.
 +
# In the processing toolbar, type {{typed|text=Field calculator}} to browse for the {{mitem|text=QGIS --> Vector Table Tools --> Field calculator}} and open it.
 +
# Define name and path of a new vector Output layer. Tick '''Create new field''', specify the Output field name {{typed|text=stratum}} as '''Whole number (integer)'''.
 +
# Formulate 5 conditional operations creating a new vector file adding a new column named '''stratum''':
 +
<pre>CASE
 +
WHEN "CODE2012" = 11100 THEN 1
 +
WHEN "CODE2012" = 21000 THEN 2
 +
WHEN "CODE2012" = 23000 THEN 3
 +
WHEN "CODE2012" = 31000 THEN 4
 +
WHEN "CODE2012" = 50000 THEN 5
 +
END
 +
</pre>
 +
[[File:Qgis_field_conditional.png|500px]]
  
 
   
 
   
  
 
[[category:Working with Vector Data]]
 
[[category:Working with Vector Data]]

Latest revision as of 17:29, 16 December 2020

We would like to use the European Urban Atlas as an information vector layer to automatically extract reference data for an actual land cover classification. The original Urban Atlas classifcation scheme has 37 classes. We need to define some strata for sampling training data for land cover classification.

  1. Click Add vector layer QGIS 2.0 addvect.png and select file geodata/vector/Subset-Goe_DE021L1_GOTTINGEN_UA2012_UTM32N.shp.
  2. This file still contains geometry errors (ring self-intersections). Check with Vector --> Geometry Tools --> Check Validity Field calculator}}
  3. Repair the vector file: Processing Tools --> Vector geometry --> Fix geometries. Save the output fixed geometry file as Geppackage with the extension *.gpkg.
  4. In the processing toolbar, type Field calculator to browse for the QGIS --> Vector Table Tools --> Field calculator and open it.
  5. Define name and path of a new vector Output layer. Tick Create new field, specify the Output field name stratum as Whole number (integer).
  6. Formulate 5 conditional operations creating a new vector file adding a new column named stratum:
CASE
WHEN "CODE2012" = 11100 THEN 1
WHEN "CODE2012" = 21000 THEN 2
WHEN "CODE2012" = 23000 THEN 3
WHEN "CODE2012" = 31000 THEN 4
WHEN "CODE2012" = 50000 THEN 5
END

Qgis field conditional.png

Personal tools
Namespaces

Variants
Actions
Navigation
Development
Toolbox
Print/export