Saya memiliki shapefile titik dengan ribuan poin. Ini memiliki bidang kode ID yang seharusnya unik. Kadang-kadang petugas entri data salah ketik ID membuat duplikat. Saat ini saya sedang menggulir bidang secara manual untuk menemukan duplikat.
Apakah ada cara lain untuk melakukan ini menggunakan Search Query Builder?
qgis
query
fields-attributes
obsidianz
sumber
sumber
Jawaban:
Jika ID berturut-turut, saya akan menambahkan kolom sementara baru dengan nilai unik seperti @ Ship.shp yang disarankan dan kemudian menggunakan pembuat kueri untuk mencari ID! = UniqueID.
Itu akan mengembalikan duplikat secara langsung. Setelah memperbaiki ID asli, hapus kolom tambahan atau ulangi seluruh proses sesuai kebutuhan - tidak jelas pola seperti apa yang harus cocok dengan ID Anda. Jika mereka hanya perlu unik, catat nilai terakhir terlebih dahulu dan Anda kemudian dapat mengedit ID buruk dalam satu iterasi, hanya menabrak nomor saat Anda pergi.
sumber
Cara grafis, dinamis, dan paling penting lainnya sederhana untuk mendeteksi atribut duplikat: gunakan pembuat ekspresi QGIS.
Sorot duplikat dalam tabel atribut :
Aktifkan Pemformatan Bersyarat (lihat panah merah di bawah) dengan kondisi berikut:
Untuk mengelompokkan semua duplikat di atas, klik kanan kolom, pilih Urutkan
Masukkan ekspresi di atas tanpa
>1
, dan hapus pilihan Urutkan naik.Sorot fitur dengan atribut duplikat di atas kanvas :
Anda dapat menambahkan simbol atau label baru dengan filter diatur ke kondisi di atas.
Dan tentu saja Anda dapat mengaktifkan override data yang diturunkan berdasarkan hal yang sama.
Misalnya, jika Anda ingin menyorot label untuk fitur dengan atribut duplikat, Anda dapat mengaturnya untuk menggambar latar belakang label (= 1) dengan penggantian berikut:
untuk mencapai sesuatu seperti berikut ini
Dalam kedua situasi, tentu saja, begitu Anda menghapus atau mengubah atribut duplikat, pemformatan / styling akan langsung diperbarui.
sumber
Gunakan plugin Group Stats dan atur ID sebagai klasifikasi bidang. Anda dapat melihat berapa kali setiap nilai telah dimasukkan di kolom 'hitung'.
sumber
Cara cepat (walaupun tidak berlaku) untuk melakukan ini adalah dengan masuk ke properti Layer, pilih Style - Categorized menggunakan kolom yang Anda minati. Terapkan ini, kemudian klik kanan pada layer di jendela lapisan dan periksa Show Feature Count kotak centang. Kemudian perluas layer di jendela layer dan Anda dapat langsung melihat berapa kali setiap nilai telah dimasukkan.
sumber
Ini adalah pertanyaan yang bagus untuk yang saya tersandung sendiri. Saya tidak suka jawaban yang telah diberikan sejauh ini. Saya memiliki dataset yang valid dengan ID unik yang tidak berurutan dan non integer. Masalahnya adalah bahwa dataset berisi geometri tunggal tetapi beberapa batasan bersifat multi geometri. Tugas saya adalah mengidentifikasi dan menyatukan geometri ini.
Saya merekomendasikan untuk menggunakan DB Manager dan SQL untuk jenis pekerjaan ini. DB Manager sekarang menjadi bagian dari QGIS. Anda perlu mengekspor data Anda ke dataset PostGIS atau SpatiaLite. SpatiaLite harus menjadi format data pilihan berdasarkan file.
Sekarang Anda dapat menggunakan count (), kelompokkan menurut, dan pesan sesuai keinginan Anda dan harus bisa menyelesaikan ini dan masalah lain dengan lebih cepat.
sumber
Ya saya membenturkan kepala ke dinding untuk masalah yang sama.
Ini skrip saya untuk menghapus fitur dengan ID yang sama. Dibutuhkan fitur pertama dengan lebih dari satu atribut indeks dan menulisnya ke kelas fitur baru.
sumber
Anda juga dapat menggunakan atribut split by dan berakhir dengan tabel terpisah untuk setiap nilai.
Saya suka saran Rayo. kecuali statist tidak bekerja seperti yang saya kira.
Itu memang memberikan hitungan nilai-nilai unik tetapi tidak membantu dengan apa nilai-nilai itu.
Perangkat lunak lain mungkin menambahkan bidang hitung dan memungkinkan Anda untuk mengekspornya ke csv atau format spreadsheet lainnya.
Saran saya untuk lapisan terbagi berdasarkan atribut ada di alat manajemen vektor
bagi data Anda pada 1 bidang apa saja dan Anda akan menghitungnya.
jauh lebih tidak penting daripada solusi ship.ship
sumber