Apakah ada cara untuk menghapus semua baris di QGIS di mana sel kolom tertentu dalam tabel atribut kosong? misal baris tiga pada tabel di bawah ini. Saya perlu melakukan ini untuk kumpulan data besar dengan sekitar 180.000 baris.
| ID | 2LE | CHECK |
|-----|------|-------|
| 1 | PT | FALSE |
| 2 | PT | TRUE |
| 3 | NULL | TRUE |
| 4 | AT | FALSE |
qgis
attribute-table
Stücke
sumber
sumber
Jawaban:
Anda juga bisa memfilter layer Anda.
Klik kanan pada layer pilih
Filter
dan gunakan"2LE" IS NOT NULL
. Setelah itu Anda dapat mengklik kanan danSave As
layer vektor lainnya.sumber
Anda bisa menggunakan yang berikut ini di Konsol Python . Pilih layer Anda dan gunakan sesuatu seperti:
sumber
Anda bisa menggunakan Lapisan Virtual, untuk menyimpan kumpulan data asli dan membuat yang baru.
Jika tidak ada geometri, Anda harus memeriksa "Tidak ada geometri" di jendela "Buat lapisan virtual".
Ada berbagai cara untuk memeriksa
NULL
atau ``. Lihat juga SQLite pilih tempat kosong? - di Stack OverflowContoh pertanyaan. Saya ingin tahu dan menguji semuanya dengan sukses (tidak ada kesalahan):
>
>
>
>
Anda dapat
Save As
(klik kanan) kueri (lapisan virtual) ke file vektor baru.sumber
Di tabel atribut, gunakan "Select by Expression" (bukan Filter) dan masukkan ekspresi agar sesuai dengan fitur yang ingin Anda hapus -
"2LE" IS NULL
sepertinya akan melakukannya. Maka Anda harus memilih semua fitur itu, dan mereka akan muncul dalam warna kuning.Kemudian dengan pengeditan dihidupkan (beralih oleh ikon pensil di bilah alat atau di tempat lain) tekan Ctrl-X atau gunakan "Cut Features" di menu "Edit". Fitur yang dipilih harus menghilang.
Anda kemudian dapat mematikan pengeditan (ikon pensil) dan akan diminta untuk menyimpan perubahan jika Anda mau, yang akan menimpa data asli pada disk atau database.
sumber