Batch updating location accuracy

There have been a number of posts regarding the importance of providing the location accuracy, but none on what to if it is missing. This posting explains how I was able to use “Batch Update” to specify an accuracy for a large number of my observations. The discussion is aimed at those who know how to create an “Export” in iNaturalist, and how to do a “Batch Update”. Some elementary spreadsheeting skills are also assumed.

There are four steps:-

  1. Using “Your Observations” to check if there is a problem.
  2. Exporting observations.
  3. Processing the spreadsheet.
  4. Batch update.

1. Using “Your Observations”

As Tony Rebelo has pointed out above, one can see all observations with no location accuracy by appending “&acc=false” to a query made in “Your Observations”, for example.

If they are few it is easy enough to update them one at a time. If there are many that is far too tedious and you need to generate a report via the export screen.

2. Exporting Observations.

This is only available from the command line. Use the URL below to get to the export page as there is no UI to get there

This is the “Query” I used (you may change the name to your own) when the Export Observations page came up.


Alas “acc=false” does not work here, but fear not there is a work around.

Generate an export anyway, and I choose to export the fields id, observed_on, positional_accuracy and scientific_name, and “Download” the spreadsheet.

3. Processing the spreadsheet.

Open the resultant spreadsheet (CSV) and sort it by “positional_accuracy”. (if you have tens of thousands you may have to do it in batch of a year at a time say). The cells are blank where no positional_accuracy has been specified, and will all be together as a result of the sort. Here is an excerpt of a query I ran on Tony’s list.

id observed_on positional_accuracy scientific_name with comma
24135677 2019-04-27 Amaranthaceae 24135677,
24135683 2019-04-27 Malva parviflora 24135683,
24135689 2019-04-27 Amaranthaceae 24135689,
24135697 2019-04-27 Cichorieae 24135697,
24135699 2019-04-27 Plantago 24135699,
24135703 2019-04-27 Foeniculum vulgare 24135703,
24135714 2019-04-27 Cynodon dactylon 24135714,
24135715 2019-04-27 Amaranthaceae 24135715,
24135724 2019-04-27 Polygonum aviculare 24135724,
24135728 2019-04-27 Ardea cinerea cinerea 24135728,
24228490 2019-04-27 Oxalis purpurea 24228490,
24228493 2019-04-27 Phylica cephalantha 24228493,
24228495 2019-04-27 Pinus pinaster 24228495,
24228496 2019-04-27 Acacia saligna 24228496,
24228498 2019-04-27 Willdenowia 24228498,
24228501 2019-04-27 Anthospermum spathulatum 24228501,
24228508 2019-04-27 Erica plumosa 24228508,

The fifth column was added to the speadsheet by concatenating a comma to the “id”, for example A2&",". Great, now we a ready do do a batch update.

4. Batch Update

Go to “Edit observations” (drop down list at top right in iNaturalist screen next to your picture).

One of three things can happen.

  1. Observation(s) was successfully updated. . Hooray we are there.
  2. You get a “504 Gateway Time-out”. Go back to the previous page and resubmit the URL. You should be able to see if the location accuracy has been up dated. If so “Hooray we are there.”
  3. Otherwise set the accuracy again and re apply. It might work this time. Otherwise choose a smaller batch and /or come back tomorrow.

The future

Big schlep. You bet, but it can be done. Hopefully better, less finicky, less nerdy and more robust methods will be provided in future from the Batch Update Screen.

Thanks to Tony Rebelo who drew my attention to this problem.