J'ai un fichier de formes avec un seul DN de champ . Je voudrais supprimer toutes les fonctionnalités qui n'ont pas de valeur spécifique du champ. Disons que le DN peut être 1,2 ou 3.
Jusqu'à présent, j'ai pu découvrir comment sélectionner des fonctionnalités et comment supprimer des fonctionnalités, mais je n'ai pas réussi à les combiner. Disons que je veux que seules les fonctionnalités avec DN = 3 restent:
Sélection des fonctionnalités trouvées ici , cependant, je ne sais pas s'il fait ce qu'il est censé faire car je n'ai pas trouvé le moyen de vérifier ce qu'il y a à l'intérieur.
select = layer.getFeatures(QgsFeatureRequest().setFilterExpression(u'"DN"!=3'))
supprimer les fonctionnalités trouvées ici
res = Ilayer.dataProvider().deleteFeatures()
Pour autant que je sache, l' deleteFeatures()
exige ID des fonctionnalités, mais je ne sais pas comment les obtenir à partir de ce select
qui est QgsFeatureIterator
.
la source