Hi, Is there a group by and summarize possibility on vector attribute table using pyqgis?
@GIS-Engineer4 жыл бұрын
How to kml convert shapefile. Kml have table tag.
@trunghieubui48964 жыл бұрын
Hi Mr. Konrad, Please help me, How can i concatenate two field by field calculator
@mteixeira873 жыл бұрын
Just what I needed, thank you![2]
@geospatialschool3 жыл бұрын
You're welcome!
@iqbaltriputra6284 жыл бұрын
Hi Mr. Konrad, How if we want to calculate using the existed field/column of the layer?
@geospatialschool4 жыл бұрын
You can use the same procedure. You just won't need to create any new fields.
@driesdams40933 жыл бұрын
Thanks a lot Konrad! Can you please make a video on conditional statements (if, elif, else) in the pyQGIS console?
@geospatialschool3 жыл бұрын
Hi Dries. I'll put it on my list but I'm not sure when I'll be able to get to it. Condition statements in PyQGIS are going to work the same way as conditionals in regular Python. So if you need to figure something out quickly check out regular Python tutorials.
@driesdams40933 жыл бұрын
@@geospatialschool Thanks for the answer! :)
@MerlinMalin4 жыл бұрын
Thank you for this video. I used the method to create a map for which i needed to include a set of almost 200 expression. I'm still quite new to PyQGIS. Is there a way to create a list of all the defined expressions and afterwards loop over them? I don't want to copy-paste this code 200 times: with edit(layer): for f in layer.getFeatures(): context.setFeature(f) f['NewVariable'] = expression1.evaluate(context) layer.updateFeature(f) I appreciate any hint or answer! Thank you in advance!
@geospatialschool4 жыл бұрын
Yes. You will need to create a list that has all your expressions as strings, and a list that has the names of the new fields to create. Then you can create another loop after context.setFeature that loops through the expression strings, creates a QgsExpression then evaluates the expression. So you'll have to move around the order of the code from the video a little bit, but you should be able to do it.
@jalineliam45673 жыл бұрын
Just what I needed, thank you!
@geospatialschool3 жыл бұрын
Happy to help!
@allanmazimwe74174 жыл бұрын
Hi how do i run this in qgis3 processing script??
@geospatialschool4 жыл бұрын
Just as shown in the video. Once you have a vector layer variable you can access, create, and calculate attributes the same way.
@allanmazimwe74174 жыл бұрын
@@geospatialschool well this script works on python console data='/home/geoportal/qgis/lizmapwps/lizmap/instances/VulnerabilityTool/data1/default_vulnerability.shp' #layer= QgsVectorLayer(data, 'dd', 'ogr') layer= iface.addVectorLayer(data, 'dd', 'ogr') pv=layer.dataProvider() pv.addAttributes([QgsField('rawvul', QVariant.Double),\ QgsField('customvul', QVariant.Double)]) layer.updateFields() expression1=QgsExpression('"LoACapacit" * 0.33 + "sensitivit" * 0.44 + "exposure" * 0.27' ) expression2=QgsExpression('expression1-minimum(expression1)/(maximum(expression1)-minimum(expression1))') context = QgsExpressionContext() context.appendScopes(QgsExpressionContextUtils.globalProjectLayerScopes(layer)) with edit(layer): for f in layer.getFeatures(): context.setFeature(f) f['rawvul'] = expression1.evaluate(context) f['customvul'] = expression2.evaluate(context) layer.updateFeature(f) with edit(layer): for f in layer.getFeatures(): context.setFeature(f) f['customvul'] = expression2.evaluate(context) layer.updateFeature(f) # however i would like to change it to qgsProcessing script .. am stuck at this... pleasse help please....
@PLRaeva4 жыл бұрын
Hi. Thank you for the videos. I really appreciate it that they are focused on geospatial analysis. I also like the way you 'make mistakes'. It teaches me even more. Keep the good work going. Thank you!