I am doing a spatial join by location.

My input layer is a shp file. It is a grid cell of the African of 0.5 x 0.5 degree latitude. It contains, a gid number which identifies the cell, the longitude and the latitude of the middle of the cell.

My join layer is a CSV file. It has different violent events which their corresponding latitude and longitude.

I am doing a spatial location by attributes using intersect option. However, when I do it, the following appears:

No spatial index exists for join layer, performance will be severely degraded

Do you know what can be happening?

  • 4
    That should be the warning that the join will take some more time due to one layer not having a spatial index. Unless you have very large data sets this can be ignored.
    – Erik
    Oct 27, 2021 at 8:54
  • 4
    I dont know if a csv can have an index. Convert it to geopackage and use the tool "Create spatial index". It will probably make the join alot faster
    – BERA
    Oct 27, 2021 at 8:57
  • 1
    Did you try to load the csv file as a vector layer and then try to create a spatial index?
    – mapperx
    Oct 27, 2021 at 9:05
  • 1
    Is it a problem when you run join layer without a spatial index? If not, just run it like that. Otherwise, do what other comments adviced: load csv and export/save it as Geopackage file, than create spatial index on that Geopackage + your shapefile.
    – Babel
    Oct 27, 2021 at 11:58
  • 3
    It says **performance** is degraded without spatial index - but not the result. Spatial indices simply speed up processing, it does not influence the (quality of the) output. So the result should be OK, it simply takes more time without spatial index.
    – Babel
    Oct 27, 2021 at 19:56


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.