TransWikia.com

Summing data from column in the Attribute table

Geographic Information Systems Asked on September 28, 2021

I’m working with population data, and I have an issue when it comes to knowing the sum of a population inside the attribute table.

example

In my attribute table, I’d like to add all the numbers in the red box, i.e. all the numbers together from the column "UN_2015_E".

Is there a way to do so?

2 Answers

There are several methods that I may refer you to:


1. First one is called "Show statistical summary". Symbolized as a Sigma symbol(Sigma), placed in the main QGIS working window.

Show_statistical_summary

In the appearing window, you just need to choose the layer which you are interested in (population data) and choose the field that you want to explore, seems like "UN_2015_E". The total number will be calculated just in the row called 'Sum'.

The same result can be achieved with View > Statistical summary

Or as it was already mentioned by @Erik you can proceed with View > Panels > Statistics Panel


2. There is a Plugin called "Group Stats", see the image below.

Group_Stats


3. If you open the Field Calculator, where you can type sum("UN_2015_E") in the Expression dialogue and get the result as a Preview.

field_calculator

In case if you are dealing not with integer values your expression can be altered as round(sum("UN_2015_E"),0)


4. With a hint from @J.R, there is also a possibility with "a Virtual layer" through Layer > Add Layer > Add/Edit Virtual Layer.

In the Query panel, you just need to type a short statement, see the image below.

SELECT SUM("UN_2015_E")
FROM "Your_shapefile_name"

Virtual_layer

In case of not integer values, you can adjust your query as following

SELECT ROUND(SUM("UN_2015_E"))
FROM "Your_shapefile_name"

5. If you open Plugins > Python Console you can achieve the result by typing the following command in Python prompt

print(sum(filter(None,[f['UN_2015_E'] for f in qgis.utils.iface.activeLayer().getFeatures()])))

The code above calculates the sum of all NOT NULL applying a filter.

Additionally, you can also refer to a layer by its name

print(sum(filter(None,[f['UN_2015_E'] for f in QgsProject.instance().mapLayersByName('your_layer_name')[0].getFeatures()])))

6. Using a QGIS domestic statistical geoalgorithms. Search for "Basic statistics for fields" in the Processing Toolbox. Choose the field "UN_2015_E" and get the result as Sum: ***.

basic_statistic


7. And finally it is possible to obtain the summing values via the SAGA's "Field Statistics" tool, which will calculate the sum as one of the parameters.

field_statistics


References:

Correct answer by Taras on September 28, 2021

Add the statistics panel (view - panels - statistics panel) to your window layout and then let it show you the statistics of your column.

Answered by Erik on September 28, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP