How to find out-of-range observations - wiki

One way to help out on iNaturalist is to look for out of range observations. These are often misidentified or captive/cultivated, but sometimes they’re interesting range extensions.

Some ways to find out of range observations:

  • Check the list of atlases with out of range observations.
  • Look for observations that fall outside the range maps or appear far away from most other observations. Not all taxa have a range map uploaded to iNaturalist, but if they do, it will appear in a pink shade on the map on the taxon page, Map tab.
  • Use observation search, for example, if you know a taxon is only found in Mexico, run a search including &not_in_place=6793 and see if you get any results. You can also run a narrow taxonomic search in a region and see if taxa that shouldn’t be there come up.
  • Use the compare tool.
    • This example shows non-flowering plants in Illinois that were observed for the first time in Illinois in 2019. These observations may be misidentifications, captive/cultivated organisms, range expansions, or just new-to-iNaturalist documentations.
  • Search in a place, sorting the rarest species first, e.g. https://jumear.github.io/stirfry/iNatAPIv1_observations_species_counts.html?place_id=205&order=asc&verifiable=true
  • It requires use of the API, but the recent_taxa search can be useful.
    • For example this URL will show plants that were recently identified for the first time in the state of Illinois. To find the associated observation, look for the identification_id and add that number to the end of the URL http://www.inaturalist.org/identifications/

What should you do if you find an out of range observation?

  • If you know it’s misidentified, add a disagreeing ID. You can also @ mention the top identifiers for that taxon/region if you need some help figuring out whether it’s misidentified.
  • Mark it “not wild” if the organism is captive or cultivated (planted by people). Ask the observer if it is unclear.
  • If you can confirm the location is incorrect (e.g. you recognize the geology/habitat doesn’t match the location), mark location not accurate. You can also ask the observer to confirm the location information.
    • Keep in mind that some observations that appear out of range just have very large uncertainty circles that do encompass part of the known range (imprecise rather than inaccurate). You can also ask the observer to refine the location if possible.
  • If everything checks out and it appears to be a true range extension, add it to the atlas for that taxon.
    • While anyone can comment on atlases, only curators can edit them. Find a taxon’s atlas by navigating to the taxon page, then selecting Curation>Edit atlas. A guide to atlases is here. If you are not a curator and a taxon doesn’t yet have an atlas, you can flag the taxon for curation by selecting Curation>Flag for curation and someone will take a look.
10 Likes

based on a request from @bouteloua, i created something to help display the results of this API endpoint in a more friendly format: https://jumear.github.io/stirfry/iNatAPIv1_identifications_recent_taxa.html.
this is the code: https://github.com/jumear/stirfry/blob/gh-pages/iNatAPIv1_identifications_recent_taxa.html.

i couldn’t figure out where in the system the endpoint is being used (though i didn’t try very hard), and i don’t fully understand what it’s trying to do (specifically, why it seems to pull ancestor taxa for a given IDed taxon). that said, i took a stab at presenting the results in what i thought might be a useful format. if anyone has thoughts on a better format, let me know. i’ll probably also add some buttons or links for next / prev page later (so that it’ll be easier to get additional results beyond the first page).

2 Likes

Regarding both range maps and atlases, I am relinking to this topic as I believe it is both relevant and still unresolved. It also has implications if/when and how geographic intelligence were to be added to the computer vision

https://forum.inaturalist.org/t/what-should-represent-a-range-for-a-species-in-inaturalist/399

1 Like

Ahhhhhh thank you! This is great!

I remember being confused about why the ancestor taxa are included in cases where the ancestor has already been observed as well. For now the thing to do is to browse for those checkmarks and ignore the X’s right?

Another thing that comes up is when there are taxon changes - the first ID made on the new name will show up on this list (even though it’s been an existing “species” observed on iNat, just has a new name).

@sambiology a DFW link to bookmark would be https://jumear.github.io/stirfry/iNatAPIv1_identifications_recent_taxa.html?place_id=57484&quality_grade=needs_id,research&rank=species&category=improving,leading&per_page=200 and you can add &taxon_id= in there to narrow it down, such as to flowering plants. Then click on either the ID # or the Obs # to bring you to the observation

1 Like

i guess so? ¯_(ツ)_/¯

i tried adding a column to account for this, but i don’t think it’s doing what i thought it would. so i removed it. this endpoint does also return number of taxon changes (and taxon replacements should have at least 1 change), but i think it’s an unreliable metric. so i didn’t use that either.

i made other changes though:

  1. added a record / line number on each row
  2. added some buttons at the bottom for prev / next page
  3. changed some of the text to indicate that up to 500 records per page is possible for this API endpoint.
  4. capitalized the table headers
  5. added an observation quality grade column
1 Like

i was thinking about this the other day, and it may be worth noting that although the Explore page does not support it for whatever reason, both the Identify page and the API will handle an &out_of_range=true parameter.

examples:

1 Like

We noticed this too, playing around with the Discord bot the other day. We tried using the out_of_range=true option with a Dronefly display and it correctly tallied up the out of range observations for the places of interest the users wanted to study, but when I clicked on any link from Dronefly’s numbers to the corresponding explore page, it showed the wrong results (including all observations, not just out of range ones). We then noticed you can open the search options and click “Identify” and the option is kept and passed on to the Identify display, so that’s good … but not exactly user-friendly.

I cannot get this to work. Any ideas why not?
https://www.inaturalist.org/observations/identify?quality_grade=needs_id%2Cresearch%2Ccasual&taxon_id=32973&verifiable=any&out_of_range=true&place_id=any
The species has a range map, and has observations outside of it, so what is going wrong?
cf https://www.inaturalist.org/taxa/32973-Bradypodion-dracomontanum (or https://www.inaturalist.org/taxa/32973/range.kml)

1 Like

hmmm… it looks like the out_of_range field may not be getting populated any more, possibly since around April 2020. i assume this change would have been to help with performance issues, but that means that we probably shouldn’t expect the parameter to return a complete set of results, even if it does produce results.

i see notes in the code that out_of_range should be removed as a parameter in the API and from the ElasticSearch indexes, but that obviously hasn’t been done yet.

so then i guess jwidness’s original approach(es) are the way to go to filter for out of range observations… or it looks like you were going to download a KML file that represents the range so that you could do some filtering on your own in your own GIS setup, and that would work, too.

2 Likes

Thanks
I was going to do that for the Proteaceae with 370 species in southern Africa. I will probably still do it, and inspect them manually.
Doing it on GIS will work, but then I have to do it: was hoping to enlist the keen proteaphiles on iNat to do it for me.

2 Likes