Saya ingin menghitung jumlah nilai dalam satu kolom, berdasarkan nilai-nilai di kolom lain. Untuk mengilustrasikan pertanyaan saya, saya mengunggah gambar di bawah ini. Kolom kedua terdiri dari kode pos, total penjualan ketiga. Saya ingin tahu apa total penjualan per kode pos? Jadi dalam hal ini:
Berapa jumlah kolom tiga untuk nilai kolom dua 1023
? Output seharusnya 4 (0+1+1+2+0)
. Jumlah untuk 1024
kemudian harus 11,5 mengikuti logika yang sama.
Karena ini adalah kumpulan data yang cukup besar, saya ingin agar kalkulator bidang QGIS (atau alat lainnya) menghitung bidang baru yang menyatakan total penjualan dalam kode pos. Sejauh ini saya tidak bisa membuatnya bekerja dan berharap seseorang di sini dapat membantu saya.
Seperti yang Anda lihat saya memiliki beberapa nilai yang hilang, apakah ini masalah dalam perhitungan? Mungkin baik untuk disebutkan adalah bahwa ini adalah sebuah meja.
sumber
Jawaban:
Pembaruan: QGIS 2.18 (07/07/2017):
Di Kalkulator Bidang , Anda bisa menggunakan fungsi Agregat
sum
yang memungkinkan Anda untuk menjumlahkan nilai-nilai kolom berdasarkan ekspresi. Anda juga dapat, secara opsional, mengelompokkan dan memfilter fitur untuk penjumlahan. Jadi dalam kalkulator bidang Anda, Anda bisa menggunakan:Yang tidak persis sama dengan metode menggunakan plugin GroupStats .
Pos asli: 02/03/2016
Gunakan plugin GroupStats yang mungkin perlu Anda unduh dari Plugins> Manage and Install Plugins .
Berikut ini contoh lapisan menggunakan beberapa atribut yang telah Anda perlihatkan:
Jadi ayo:
Jalankan plugin GroupStats , pilih bidang yang relevan untuk dijumlahkan (
Sales
untuk baris;Sum
untuk nilai) lalu klik Hitung . Anda harus melihat hasil yang menunjukkan jumlah setiap penjualan:Simpan hasilnya sebagai file .csv dari toolbar GroupStats:
Impor file .csv kembali ke QGIS dengan menyeretnya ke antarmuka atau dari bilah alat:
Layer> Add Layer> Add Delimited Text Layer ( perhatikan bahwa nilainya dipisahkan oleh semi-titik dua )
Lakukan Bergabung dengan file shapefile dan .csv, cocok dengan
Sales
bidang:Shapefile sekarang harus berisi nilai penjumlahan dari file .csv:
Anda bisa, jika mau, melanjutkan untuk menggunakan
Save As...
opsi pada shapefile dan menyimpannya sebagai yang baru untuk menjaga bidang yang digabungkan.sumber
sum( "Sum", "Sales")
digunakan"Sales"
sebagai filter grup, jika itu yang Anda maksud?Jika Anda memperbarui ke versi QGIS terbaru 2.14, Anda dapat menggunakan lapisan virtual membuat pernyataan sql seperti:
UI terlihat seperti:
Anda juga dapat menggunakan manajer DB, tempat Anda memiliki pembuat kueri di belakang tombol sql:
Kolom MYID dapat digunakan untuk bergabung dengan jumlah penjualan kembali ke tabel utama. Tab gabung berada di bawah properti tabel.
Lihatlah changelog visual QGIS di bawah
Feature: Virtual layers
sumber
Cara melakukan ini adalah sebagai berikut:
sumber