Bagaimana cara menambahkan urutan ke tabel atribut?

8

Apakah ada cara untuk menggunakan kalkulator lapangan di QGIS untuk membuat rentang nilai dalam urutan jumlah dengan rentang input yang ditentukan? Misalnya, jika saya ingin agar nilai 1 hingga 5 diulang dalam tabel saya sesuai dengan catatan pertama dalam tabel.

Terima kasih...

Ryan Garnett
sumber
Apakah Anda ingin mengisi 1,2,3,4,5,1,2,3,4,5, ... atau nilai tergantung pada atribut lain?
underdark
Ya Underdark, itulah yang saya inginkan. 1,2,3,4,5 sampai semua catatan dihitung.
Ryan Garnett

Jawaban:

11

Ini akan melakukannya dalam Field Calculator:

 ( $rownum-1 ) % 5 +1

masukkan deskripsi gambar di sini

underdark
sumber
2
Saya suka melihat hal-hal seperti ini, dan menemukan beberapa hal sendiri. Tetapi di mana saya dapat menemukan dokumentasi yang lebih komprehensif tentang semua hal yang mungkin dengan Field Calculator?
SAnderka
@SAnderka Kalkulator bidang baru dilengkapi dengan daftar panjang fungsi yang terdokumentasi - semuanya terlihat di GUI. Kemungkinan hampir tak ada habisnya :)
underdark
Saya tahu, tapi entah bagaimana saya kehilangan beberapa dasar-dasar di sini, saya percaya. Apa sebenarnya yang dilakukan bagian "% 5 +1"? Selain itu, salinan QGIS saya (diinstal dan diperbarui melalui OSGEO4W) hanya memperlihatkan "Ups! QGIS tidak dapat menemukan bantuan untuk fungsi ini." di jendela bantuan?
SAnderka
% adalah operator modulo - seperti dalam banyak bahasa komputer. Ini mengembalikan sisa dari devision (oleh 5 dalam hal ini). Pada sistem OSGeo4W saya dokumen rusak di 1,8 juga tetapi berfungsi dengan baik di dev1.9.
underdark
Ah, saya masih di 1.8.0_4, mungkin itu alasannya. Dan saya harus melihat lebih dalam bahasa pemrograman, sepertinya ... sigh
SAnderka
3

Solusi saya untuk masalah seperti ini adalah menggunakan Libre atau OpenOffice Calc. Pertama-tama periksa apakah kolom FID Anda masih utuh dan benar (Anda akan memerlukannya untuk mengembalikan file atribut ke urutan aslinya jika Anda menggunakan tabel dbf di Calc - jika tidak, fitur-fiturnya akan memiliki data yang salah terpasang setelahnya).

Buat Backup dbf, untuk jaga-jaga.

Kemudian, buka saja file dbf di Calc (jangan lupa untuk menggunakan pengaturan codepage yang tepat ketika membuka file, jika tidak, Anda mungkin kehilangan umlauts dll.), Lakukan apa pun yang ingin Anda lakukan, misalkan mengisi kolom dengan data melalui vlookup (), dan simpan file lagi sebagai dbf.

Periksa hasilnya di QGIS, tetapi semuanya akan berfungsi dengan baik sekarang.

Sanderka
sumber
Terima kasih, saya tahu pendekatan ini, tetapi saya menginginkan cara untuk melakukan ini dalam QGIS.
Ryan Garnett
Juga, saya salah mengerti pertanyaan Anda - Saya pikir Anda sedang mencari cara untuk menambahkan nilai tergantung pada variabel lain yang berubah (bukan bahwa saya akan tahu cara untuk melakukan ini dalam QGIS ... :))
SAnderka