#1 Thu 14 March 2019 11:09
- preliator
- Participant assidu
- Date d'inscription: 17 Nov 2018
- Messages: 433
QGIS: Jointure
Bonjour à tous,
Lorsque je ne sais pas comment faire un calcul spécifique dans ma table attributaire avec qgis (créer un champ classement de 1 à N, rogner des caractères avec par exemple passer de "94 kV" à "94", etc), j'ai tendance à le faire sous excel ou sur le langage R que je commence à maîtriser petit à petit.
Voilà comment je procède :
- Création d'un élément unique pour chaque donnée dans qgis avec un nouveau champ "Id" avec la formule "$id"
- exportation du .dbf de ma couche en Csv
- Réalisation de mon nouveau champs sur excel ou avec R
- enregistrement, puis importation du csv dans qgis
- Jointure, grâce au champs ID
Mon problème d'aujourd'hui, c'est que cette manip' n'est pas du tout adaptée lorsqu"il y a beaucoup (beaucoup) de données. En effet, Qgis met énormément de temps à créer à appliquer la formule "$id".
Bref, je me demandais comment je pourrais procéder autrement ...
Merci à vous
Hors ligne
#2 Thu 14 March 2019 13:23
- sylvain poupard
- Participant assidu
- Date d'inscription: 19 Mar 2009
- Messages: 362
Re: QGIS: Jointure
Bonjour,
La calculatrice de champs propose un certain nombre d’algorithme qui devraient répondre à vos besoins, avec leur syntaxe et des exemples dans le panneau de droite.
Dans votre exemple "94 kV" vers "94" vous pouvez utiliser:
- left( "ma_colonne",2) ou
- left( "ma_colonne" , length( "ma_colonne" )-3) si le chiffre varie en longueur, le "-3" supprimant " kV".
Et question rapidité allez peut-être voir du côté de postgre.
Bon courage
Hors ligne