У меня есть слой Shapefile в QGIS 2.6 с несколькими полигонами, каждый из которых имеет данные более чем в 100 полях. Мне нужно создать новый слой со всеми теми же полигонами, но со всеми их полями данных пустыми (установить в 0, пустым или пустым в зависимости от типа поля). Есть ли более быстрый способ сделать это, чем нажимать «Удалить» на каждом поле каждого многоугольника по одному, мне пришлось бы делать это более 1000 раз таким образом.
qgis
attribute-table
qgis-2.6
alphabetasoup
источник
источник
Ответы:
Разве вы не можете просто скопировать и вставить свои данные в слой X (слой / шейп -файл / класс пространственных объектов / любой другой), который не имеет атрибутов (кроме OID и Geometry), а затем скопировать и вставить теперь «пустую» геометрию обратно в ваш оригинальный слой?
источник
Вы можете ввести следующий код в консоли Python, чтобы очистить ВСЕ атрибуты
NULL
для шейп-файла, загруженного в QGIS. Выберите слой на панели слоев (оглавление) и запустите код:Это было проверено на QGIS 2.8.2.
ОБНОВЛЕНИЕ :
В ответ на комментарий @Vince следующий код может быть непосредственно скопирован / вставлен в консоль Python и будет изменять значения атрибутов в зависимости от типа поля (то есть
0
для целочисленных полей;NULL
для строковых полей; и эпоха1900-01-01
для Дата поле):источник
Вы можете просто сохранить его как новый файл и установить флажок «Пропустить создание атрибута» в диалоговом окне «Сохранить как ...». Он делает именно то, что говорит.
Будет один столбец числового счетчика с именем FID, по-видимому, для формата Shapefile требуется хотя бы один атрибут? Если можете, используйте что-то лучшее, пространственный или геопакетный.
источник
NULL
.Откройте файл .dbf с помощью openoffice или других и удалите данные.
Вы можете использовать python для зацикливания файлов и удаления всех, кроме заголовков. См. Dbf python module
источник
QGIS может открывать файлы форм без .dbf.
Таким образом, вы можете просто удалить компонент .dbf и загрузить в .shp, который будет вводить только геометрию.
источник
Возможно, вы можете отредактировать файл * .dbf в Excel.
Затем вы удаляете все поля, кроме одного.
Наконец сохраните и выйдите.
Было бы полезно сохранить архив * .shp перед этим.
источник
В QGIS 2.8.x вы также можете избавиться от определенных или всех полей. Откройте таблицу атрибутов, переключите режим редактирования, нажмите кнопку «Удалить столбец», выберите все ненужные атрибуты и нажмите «ОК». Сохранить изменения.
источник