If no solutions is found you could export the project’s observations and search for the missing species by yourself.
For example (I just use this month observations to do it quicker) in the export tool:
- 1st project:
quality_grade=research&identifications=any&projects%5B%5D=biodiversitaet-im-rheingau-taunus-kreis&d1=2023-07-01
- 2nd project:
quality_grade=research&identifications=any&projects%5B%5D=biodiversitaet-in-mainz-lk-mz-bingen&d1=2023-07-01
This will give you CSV that you can handle as you want. Example in Python.
import pandas as pd
import numpy as np
project1 = pd.read_csv('observations-proj1.csv', usecols=['id', 'scientific_name',
'taxon_id'])
project2 = pd.read_csv('observations-proj2.csv', usecols=['id', 'scientific_name',
'taxon_id'])
print(project1)
print(project2)
id scientific_name taxon_id
0 170426124 Acer platanoides 54763
1 170586330 Oxythyrea funesta 68328
2 170586938 Melanargia galathea 130398
3 170587073 Clytra laeviuscula 123661
4 170643456 Nezara viridula 141725
.. ... ... ...
103 171243666 Calvia decemguttata 326207
104 171250709 Oncotylus viridiflavus 555345
105 171281327 Lotus corniculatus 47435
106 171405518 Rubus caesius 64546
107 171424959 Evernia prunastri 123175
[108 rows x 3 columns]
id scientific_name taxon_id
0 170457678 Serinus serinus 9236
1 170457680 Curruca communis 1289470
2 170457681 Carduelis carduelis 9398
3 170457685 Falco tinnunculus 472766
4 170458510 Sciurus vulgaris 46001
.. ... ... ...
184 171449703 Rumex scutatus 333937
185 171449706 Cota tinctoria 76456
186 171449707 Melampyrum arvense 245680
187 171524854 Polyphylla fullo 360353
188 171525011 Polyphylla fullo 360353
[189 rows x 3 columns]
Getting taxons not in projects:
project1['taxon_id'] = project1['taxon_id'].astype(str)
project2['taxon_id'] = project2['taxon_id'].astype(str)
found_in_project1 = project1['taxon_id'].unique()
found_in_project2 = project2['taxon_id'].unique()
# in project 1 but not in 2
not_in_project1 = np.setdiff1d(found_in_project1, found_in_project2)
# in project 2 but not in 1
not_in_project2 = np.setdiff1d(found_in_project2, found_in_project1)
Checking it on iNat:
print('https://www.inaturalist.org/observations?place_id=any&taxon_ids=' +
','.join(not_in_project1) + '&view=species')
print('https://www.inaturalist.org/observations?place_id=any&taxon_ids=' +
','.join(not_in_project2) + '&view=species')
Will return you https://www.inaturalist.org/observations?place_id=any&taxon_ids=1050998,109650,...,82685,85492&view=species
and https://www.inaturalist.org/observations?place_id=any&taxon_ids=107949,124403,...,9398,94043&view=species
, so you can use these links.
So, in this example: in project 1 and not in 2 and in project 2 and not in 1.