Updated 5 March, 2026
Knowing what species inhabit an area is important for conservation and ecosystem management. In particular, it can help us find how many known species are in a given area, and whether any species are vulnerable or endangered.
In this post, we will present two options, one using the galah-python package, the other using an external shapefile and list. Using either workflow, we will show you how to download a list of species within a Local Government Area (Shoalhaven, NSW), cross-reference this list with a state conservation status list, and visualise the number of threatened species in the region with pywaffle and plotnine.
Let’s first load our packages. To download species lists, you will also need to enter a registered email with the ALA using galah_config().
import galah
galah.galah_config(email = "your-email-here") # ALA-registered emailDownload threatened species in an area
Choose which method you would like to view:
{galah-python}(usingfieldsdownloaded from the Atlas of Living Australia)- Downloaded shapefile + species list
The method you choose depends on whether the region or list you wish to return species for is already in {galah-python}, or whether you wish to filter for a more specific area defined by a separate shapefile or list. Keep in mind that using an external list may require additional work matching taxonomic names.
Search for fields
To find what exists in galah to help us narrow our query, we can use search_all() to search for available fields. A field in {galah-python} refers to a column or layer stored in a living atlas. Let’s do a text search to find what fields contain information on “Local Government Areas”.
galah.search_all(fields = "Local Government Areas") id description type link
0 cl959 Local Government Areas 2011 Local Government A... layers
1 cl11170 Local Government Areas 2023 Local Government A... layers
2 cl23 Local Government Areas 2012 deprecated LGA Bou... layers
3 cl10923 Local Government Areas PSMA 2018 PSMA Local Go... layers
4 cl110923 Local Government Areas PSMA 2018 PSMA Local Go... layers
The field cl111701 contains the most recent available data (from 2023). We can preview what values are within field cl11170 using show_values().
galah.show_values(field = 'cl11170') field category
0 cl11170 Unincorporated ACT
1 cl11170 Brisbane
2 cl11170 Greater Geelong
3 cl11170 Moreton Bay
4 cl11170 East Gippsland
.. ... ...
542 cl11170 Peppermint Grove
543 cl11170 Woorabinda
544 cl11170 Wujal Wujal
545 cl11170 Cherbourg
546 cl11170 Belyuen
[547 rows x 2 columns]
There are lots of Local Government Areas! To check whether Shoalhaven is included, we can do a text search for values that match 'shoalhaven'.
galah.search_values(field = 'cl11170', value = 'shoalhaven') field category
0 cl11170 Shoalhaven
Download data
Using the field and value returned above, we can now build our query. We begin our query with galah_call() and filter to only Shoalhaven in the year 2024. Ending our query with atlas_species() will return a list of species.
species_shoal = galah.atlas_species(filters = ['cl11170=Shoalhaven','year=2024'])
species_shoal Species Species Name Scientific Name Authorship Taxon Rank Kingdom Phylum Class Order Family Genus Vernacular Name
0 https://biodiversity.org.au/afd/taxa/e9d6fbbd-... Phascolarctos cinereus (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala
1 https://biodiversity.org.au/afd/taxa/ae56080e-... Malurus (Malurus) cyaneus (Ellis, 1782) species Animalia Chordata Aves Passeriformes Maluridae Malurus Superb Fairy-wren
2 https://biodiversity.org.au/afd/taxa/4dfe64e2-... Trichoglossus moluccanus (Gmelin, 1788) species Animalia Chordata Aves Psittaciformes Psittacidae Trichoglossus Rainbow Lorikeet
3 https://biodiversity.org.au/afd/taxa/5291343e-... Gymnorhina tibicen (Latham, 1801) species Animalia Chordata Aves Passeriformes Artamidae Gymnorhina Australian Magpie
4 https://biodiversity.org.au/afd/taxa/8117f68b-... Corvus coronoides Vigors & Horsfield, 1827 species Animalia Chordata Aves Passeriformes Corvidae Corvus Australian Raven
... ... ... ... ... ... ... ... ... ... ... ...
3078 https://id.biodiversity.org.au/taxon/apni/5178... Eucalyptus rubida H.Deane & Maiden species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Eucalyptus Candlebark
3079 https://id.biodiversity.org.au/taxon/apni/5178... Tristaniopsis collina Peter G.Wilson & J.T.Waterh. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Tristaniopsis Mountain Water Gum
3080 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum appendiculatum Nicholls species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Tailed Leek-orchid
3081 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum gracile Lindl. species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Little Laughing Leek Orchid
3082 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum sylvestre R.J.Bates & D.L.Jones species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Forest Leek Orchid
[3083 rows x 11 columns]
atlas_species() returns taxonomic information at the species level (for more info, see the tab below). To make sure we return taxonomic information at the lowest level each occurrence was identified, we’ll group_by(taxonConceptID), which is a unique ID attached to each occurrence record’s taxonomic identification (read the box below for more on what this means).
By default atlas_species() only returns taxonomic information at the species level. This means that if some species are identified to subspecies on a specific list like the NSW Conservation Status list, atlas_species() will return the species-level match, rather than the subspecies-level match. For example, the name "Potorous tridactylus" is returned instead of "Potorous tridactylus tridactylus".
Grouping by taxonConceptID like we do below specifies that we wish to match to the identified taxon, rather than only to the species level.
species_shoal = galah.atlas_species(filters = ['cl11170=Shoalhaven','year=2024'], group_by = 'taxonConceptID')
species_shoal taxonConceptID Species Name Scientific Name Authorship Taxon Rank Kingdom Phylum Class Order Family Genus Vernacular Name
0 https://biodiversity.org.au/afd/taxa/e9d6fbbd-... Phascolarctos cinereus (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala
1 https://biodiversity.org.au/afd/taxa/ae56080e-... Malurus (Malurus) cyaneus (Ellis, 1782) species Animalia Chordata Aves Passeriformes Maluridae Malurus Superb Fairy-wren
2 https://biodiversity.org.au/afd/taxa/4dfe64e2-... Trichoglossus moluccanus (Gmelin, 1788) species Animalia Chordata Aves Psittaciformes Psittacidae Trichoglossus Rainbow Lorikeet
3 https://biodiversity.org.au/afd/taxa/5291343e-... Gymnorhina tibicen (Latham, 1801) species Animalia Chordata Aves Passeriformes Artamidae Gymnorhina Australian Magpie
4 https://biodiversity.org.au/afd/taxa/8117f68b-... Corvus coronoides Vigors & Horsfield, 1827 species Animalia Chordata Aves Passeriformes Corvidae Corvus Australian Raven
... ... ... ... ... ... ... ... ... ... ... ...
4490 https://id.biodiversity.org.au/taxon/apni/5179... Asparagales Link order Plantae Charophyta Equisetopsida Asparagales NaN NaN NaN
4491 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum appendiculatum Nicholls species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Tailed Leek-orchid
4492 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum gracile Lindl. species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Little Laughing Leek Orchid
4493 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum sylvestre R.J.Bates & D.L.Jones species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Forest Leek Orchid
4494 https://id.biodiversity.org.au/taxon/apni/5179... Pinales Gorozh. order Plantae Charophyta Equisetopsida Pinales NaN NaN NaN
[4495 rows x 11 columns]
It’s also possible to return number of observations by ending our query with atlas_counts(). In this case, we can group by scientificName (the name of the lowest level the observation was identified).
galah.atlas_counts(filters = ['cl11170=Shoalhaven','year=2024'],group_by = 'scientificName') scientificName count
0 ACANTHIZIDAE 2
1 ACCIPITRIDAE 9
2 ACCIPITRIFORMES 4
3 ACRIDIDAE 6
4 ACTINOPTERYGII 5
... ... ...
4490 Zosteria fulvipubescens 1
4491 Zosteria rosevillensis 1
4492 Zosterops lateralis 810
4493 Zoysia 1
4494 Zoysia macrantha 9
[4495 rows x 2 columns]
Cross-reference with threatened species lists
Next we’ll compare our Shoalhaven species list species_shoal with a state-wide conservation status list. We can use {galah-python} to access lists that are available on the Atlas of Living Australia. Shoalhaven is within the state of New South Wales, so let’s search for “New South Wales” to see what state-specific lists are available.
galah.search_all(lists = 'New South Wales') species_list_uid listName description listType dateCreated lastUpdated lastUploaded lastMatched username fullName itemCount region category generalisation authority sdsType isAuthoritative isInvasive isThreatened isPrivate looseSearch isBIE isSDS wkt
0 dr650 New South Wales : Conservation Status Classification codes under the Threatened Spec... CONSERVATION_LIST 2015-04-04T13:00:00Z 2026-02-27T00:39:46Z 2026-02-27T00:39:21Z 2026-02-27T00:39:21Z amanda.buyan@csiro.au None 1081 New South Wales NaN NaN NaN NaN True False True False None True False
1 dr487 New South Wales Sensitive Species List The NSW Government [http://www.environment.nsw... SENSITIVE_LIST 2013-06-20T14:00:00Z 2026-02-05T21:33:19Z 2026-02-05T21:33:12Z 2026-02-05T21:33:12Z amanda.buyan@csiro.au None 217 New South Wales NSW OEH CONSERVATION True False False False None True True
Two lists are returned, and both appear relevant. With the help of some additional columns returned by search_all()—listType, isAuthoritative and isThreatened—we can learn more about which list suits our needs best. Although both lists are authoritative, only one list (dr650) contains threatened species whereas the other (dr487) contains sensitive species.
galah.search_all(lists = 'New South Wales')[['species_list_uid', 'listType', 'isAuthoritative', 'isThreatened']] species_list_uid listType isAuthoritative isThreatened
0 dr650 CONSERVATION_LIST True True
1 dr487 SENSITIVE_LIST True False
By specifying the ID dr650 and using show_values(), we can view the complete New South Wales threatened species list.
galah.show_values(field = 'dr650',lists = True) id name commonName scientificName lsid dataResourceUid
0 7243482 Delma impar Striped Legless Lizard Delma impar https://biodiversity.org.au/afd/taxa/c7327642-... dr650
1 7243887 Callocephalon fimbriatum Gang-gang Cockatoo Callocephalon fimbriatum https://biodiversity.org.au/afd/taxa/6c646af8-... dr650
2 7243730 Cacophis harriettae White-crowned Snake Cacophis harriettae https://biodiversity.org.au/afd/taxa/20872a68-... dr650
3 7243405 Litoria booroolongensis Booroolong Frog Litoria booroolongensis https://biodiversity.org.au/afd/taxa/9678cb19-... dr650
4 7244319 Anthochaera phrygia Regent Honeyeater Anthochaera (Xanthomyza) phrygia https://biodiversity.org.au/afd/taxa/31869a0e-... dr650
... ... ... ... ... ... ...
1076 7244009 Phyllodes imperialis smithersi Pink Underwing Moth Phyllodes imperialis smithersi https://biodiversity.org.au/afd/taxa/80cf15e7-... dr650
1077 7243839 Lucasium microplax Southern Sandplain Gecko Lucasium microplax https://biodiversity.org.au/afd/taxa/8f94e876-... dr650
1078 7243711 Aggreflorum benwellii NaN Leptospermum benwellii https://id.biodiversity.org.au/node/apni/2899441 dr650
1079 7244329 Prasophyllum sp. Canobolense NaN Prasophyllum sp. Canobolense (C. Bower ORG 7797) https://id.biodiversity.org.au/taxon/apni/5179... dr650
1080 7243942 Patersonia rosea NaN Patersonia rosea https://id.biodiversity.org.au/name/apni/51734419 dr650
[1081 rows x 6 columns]
As of {galah version} 0.12.2, we can also use show_values() to add conservation status columns to our species list. By adding the argument all_fields = True, we can add any columns stored in the ALA from the original list. For conservation lists, this includes columns like status, sourceStatus and IUCN_Status.
# get values
nsw_threatened = galah.show_values(field = 'dr650', lists = True, all_fields = True)
# rearrange columns so statuses are in front
nsw_threatened = nsw_threatened[['status','sourceStatus','IUCN_equivalent_status'] + [col for col in nsw_threatened.columns if col not in ['status','sourceStatus', 'IUCN_equivalent_status']]]Adding status info can be handy if we want to join this with other information like record counts.
# get record counts for each species on the NSW Conservation Status list
threatened_counts = galah.atlas_counts(
filters = ['species_list_uid=dr650','cl11170=Shoalhaven','year=2024'],
group_by = 'scientificName'
)
threatened_counts scientificName count
0 Angophora bakeri subsp. bakeri 1
1 Antaresia childreni 1
2 Anthosachne kingiana subsp. kingiana 1
3 Arctocephalus forsteri 2
4 Arenaria interpres 92
.. ... ...
104 Xenus cinereus 36
105 Zieria baeuerlenii 1
106 Zieria granulata 1
107 Zieria involucrata 1
108 Zieria murphyi 2
[109 rows x 2 columns]
# join counts to status information
threatened_counts_joined = pd.merge(threatened_counts,nsw_threatened,on='scientificName')
threatened_counts_joined = threatened_counts_joined[['scientificName', 'count', 'status', 'commonName'] + [col for col in threatened_counts_joined.columns if col not in ['scientificName', 'count', 'status', 'commonName']]]
threatened_counts_joined scientificName count status commonName sourceStatus IUCN_equivalent_status id name lsid dataResourceUid verbatimScientificName vernacularName rank family
0 Angophora bakeri subsp. bakeri 1 Endangered None Endangered Endangered 7244230 Angophora exul https://id.biodiversity.org.au/node/apni/2913071 dr650 Angophora exul Gibraltar Rock Apple Species Myrtaceae
1 Antaresia childreni 1 Vulnerable Children's Python Vulnerable Vulnerable 7243944 Antaresia childreni https://biodiversity.org.au/afd/taxa/d1f64ac1-... dr650 Antaresia childreni Children's Python Species Pythonidae
2 Anthosachne kingiana subsp. kingiana 1 Critically Endangered Phillip Island Wheat Grass Critically Endangered Critically Endangered 7243811 Anthosachne kingiana subsp. kingiana https://id.biodiversity.org.au/taxon/apni/5129... dr650 Anthosachne kingiana subsp. kingiana Phillip Island Wheat Grass Subspecies Poaceae
3 Arctocephalus forsteri 2 Vulnerable Long-nosed Fur Seal Vulnerable Vulnerable 7244010 Arctocephalus forsteri https://biodiversity.org.au/afd/taxa/598c4bf0-... dr650 Arctocephalus forsteri New Zealand Fur-seal Species Otariidae
4 Arenaria interpres 92 Vulnerable Ruddy Turnstone Vulnerable Vulnerable 7243904 Arenaria interpres https://biodiversity.org.au/afd/taxa/2fa47871-... dr650 Arenaria interpres Ruddy Turnstone Species Scolopacidae
.. ... ... ... ... ... ... ... ... ... ... ... ... ... ...
104 Xenus cinereus 36 Vulnerable Terek Sandpiper Vulnerable Vulnerable 7243480 Xenus cinereus https://biodiversity.org.au/afd/taxa/4090ad27-... dr650 Xenus cinereus Terek Sandpiper Species Scolopacidae
105 Zieria baeuerlenii 1 Endangered Bomaderry Zieria Endangered Endangered 7243361 Zieria baeuerlenii https://id.biodiversity.org.au/node/apni/2898536 dr650 Zieria baeuerlenii Bomaderry Zieria Species Rutaceae
106 Zieria granulata 1 Endangered Illawarra Zieria Endangered Endangered 7243695 Zieria granulata https://id.biodiversity.org.au/node/apni/2916054 dr650 Zieria granulata Illawarra Zieria Species Rutaceae
107 Zieria involucrata 1 Endangered None Endangered Endangered 7243559 Zieria involucrata https://id.biodiversity.org.au/node/apni/2888006 dr650 Zieria involucrata None Species Rutaceae
108 Zieria murphyi 2 Vulnerable Velvet Zieria Vulnerable Vulnerable 7243398 Zieria murphyi https://id.biodiversity.org.au/node/apni/2914587 dr650 Zieria murphyi Velvet Zieria Species Rutaceae
[109 rows x 14 columns]
To return which species on the New South Wales Conservation Status List (dr650) were recorded in Shoalhaven in 2024, we can add species_list_uid == dr650 as a filter to a query ending with atlas_species(). To make sure we return taxonomic information at the lowest level each occurrence was identified, we’ll group_by(taxonConceptID).
threatened = galah.atlas_species(
filters = ['cl11170=Shoalhaven','year=2024','species_list_uid=dr650'],
group_by = 'taxonConceptID'
)
threatened taxonConceptID Species Name Scientific Name Authorship Taxon Rank Kingdom Phylum Class Order Family Genus Vernacular Name
0 https://biodiversity.org.au/afd/taxa/e9d6fbbd-... Phascolarctos cinereus (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala
1 https://biodiversity.org.au/afd/taxa/ec2c76c7-... Haematopus longirostris Vieillot, 1817 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Australian Pied Oystercatcher
2 https://biodiversity.org.au/afd/taxa/1f178bbc-... Potorous tridactylus trisulcatus (McCoy, 1865) subspecies Animalia Chordata Mammalia Diprotodontia Potoroidae Potorous Long-nosed Potoroo
3 https://biodiversity.org.au/afd/taxa/dc420306-... Haliaeetus (Pontoaetus) leucogaster (Gmelin, 1788) species Animalia Chordata Aves Accipitriformes Accipitridae Haliaeetus White-bellied Sea-eagle
4 https://biodiversity.org.au/afd/taxa/5ff29bca-... Numenius (Numenius) madagascariensis (Linnaeus, 1766) species Animalia Chordata Aves Charadriiformes Scolopacidae Numenius Eastern Curlew
.. ... ... ... ... ... ... ... ... ... ... ...
104 https://id.biodiversity.org.au/node/apni/2919589 Grevillea rivularis L.A.S.Johnson & McGill. species Plantae Charophyta Equisetopsida Proteales Proteaceae Grevillea Carrington Falls Grevillea
105 https://id.biodiversity.org.au/taxon/apni/5128... Epacris gnidioides (Summerh.) E.A.Br. species Plantae Charophyta Equisetopsida Ericales Ericaceae Epacris Budawangs Cliff-heath
106 https://id.biodiversity.org.au/taxon/apni/5129... Anthosachne kingiana subsp. kingiana NaN subspecies Plantae Charophyta Equisetopsida Poales Poaceae Anthosachne Phillip Island Wheat Grass
107 https://id.biodiversity.org.au/taxon/apni/5139... Caladenia tessellata Fitzg. species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Caladenia Thick-lip Spider-orchid
108 https://id.biodiversity.org.au/taxon/apni/5141... Pterostylis ventricosa (D.L.Jones) G.N.Backh. species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Pterostylis NaN
[109 rows x 11 columns]
Note that status information is not included in the query above, but can be joined in the same way we added this status information to threatened_counts2.
# select status columns, join status information
threatened = threatened.rename(columns={'Species Name': 'scientificName'})
threatened_status = pd.merge(nsw_threatened,threatened,on='scientificName')
threatened_status = threatened_status[['scientificName', 'status', 'sourceStatus'] + [col for col in threatened_status.columns if col not in ['scientificName', 'status', 'sourceStatus']]]
threatened_status scientificName status sourceStatus IUCN_equivalent_status id name commonName lsid dataResourceUid verbatimScientificName vernacularName rank family taxonConceptID Scientific Name Authorship Taxon Rank Kingdom Phylum Class Order Family Genus Vernacular Name
0 Callocephalon fimbriatum Endangered Endangered Endangered 7243887 Callocephalon fimbriatum Gang-gang Cockatoo https://biodiversity.org.au/afd/taxa/6c646af8-... dr650 Callocephalon fimbriatum Gang-gang Cockatoo Species Cacatuidae https://biodiversity.org.au/afd/taxa/6c646af8-... (Grant, 1803) species Animalia Chordata Aves Psittaciformes Cacatuidae Callocephalon Gang-gang Cockatoo
1 Calidris (Calidris) tenuirostris Vulnerable Vulnerable Vulnerable 7243934 Calidris tenuirostris Great Knot https://biodiversity.org.au/afd/taxa/3e9c17c9-... dr650 Calidris tenuirostris Great Knot Species Scolopacidae https://biodiversity.org.au/afd/taxa/3e9c17c9-... (Horsfield, 1821) species Animalia Chordata Aves Charadriiformes Scolopacidae Calidris Great Knot
2 Ninox (Rhabdoglaux) strenua Vulnerable Vulnerable Vulnerable 7244303 Ninox strenua Powerful Owl https://biodiversity.org.au/afd/taxa/d1c5dee0-... dr650 Ninox strenua Powerful Owl Species Strigidae https://biodiversity.org.au/afd/taxa/d1c5dee0-... (Gould, 1838) species Animalia Chordata Aves Strigiformes Strigidae Ninox Powerful Owl
3 Limosa limosa Endangered Endangered Endangered 7243263 Limosa limosa Black-tailed Godwit https://biodiversity.org.au/afd/taxa/70b173fb-... dr650 Limosa limosa Black-tailed Godwit Species Scolopacidae https://biodiversity.org.au/afd/taxa/70b173fb-... (Linnaeus, 1758) species Animalia Chordata Aves Charadriiformes Scolopacidae Limosa Black-tailed Godwit
4 Numenius (Numenius) madagascariensis Critically Endangered Critically Endangered Critically Endangered 7244110 Numenius madagascariensis Eastern Curlew https://biodiversity.org.au/afd/taxa/5ff29bca-... dr650 Numenius madagascariensis Eastern Curlew Species Scolopacidae https://biodiversity.org.au/afd/taxa/5ff29bca-... (Linnaeus, 1766) species Animalia Chordata Aves Charadriiformes Scolopacidae Numenius Eastern Curlew
.. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
104 Anthosachne kingiana subsp. kingiana Critically Endangered Critically Endangered Critically Endangered 7243811 Anthosachne kingiana subsp. kingiana Phillip Island Wheat Grass https://id.biodiversity.org.au/taxon/apni/5129... dr650 Anthosachne kingiana subsp. kingiana Phillip Island Wheat Grass Subspecies Poaceae https://id.biodiversity.org.au/taxon/apni/5129... NaN subspecies Plantae Charophyta Equisetopsida Poales Poaceae Anthosachne Phillip Island Wheat Grass
105 Miniopterus orianae oceanensis Vulnerable Vulnerable Vulnerable 7243507 Miniopterus orianae oceanensis Eastern Bent-winged Bat https://biodiversity.org.au/afd/taxa/57842363-... dr650 Miniopterus orianae oceanensis Large Bent-winged Bat Subspecies Miniopteridae https://biodiversity.org.au/afd/taxa/57842363-... Maeda, 1982 subspecies Animalia Chordata Mammalia Chiroptera Miniopteridae Miniopterus Eastern Bent-winged Bat
106 Potorous tridactylus trisulcatus Vulnerable Vulnerable Vulnerable 7243357 Potorous tridactylus trisulcatus Long-nosed Potoroo https://biodiversity.org.au/afd/taxa/1f178bbc-... dr650 Potorous tridactylus trisulcatus Southern long-nosed potoroo Subspecies Potoroidae https://biodiversity.org.au/afd/taxa/1f178bbc-... (McCoy, 1865) subspecies Animalia Chordata Mammalia Diprotodontia Potoroidae Potorous Long-nosed Potoroo
107 Epacris gnidioides Vulnerable Vulnerable Vulnerable 7243424 Epacris gnidioides Budawangs Cliff-heath https://id.biodiversity.org.au/taxon/apni/5128... dr650 Epacris gnidioides Budawangs Cliff-heath Species Ericaceae https://id.biodiversity.org.au/taxon/apni/5128... (Summerh.) E.A.Br. species Plantae Charophyta Equisetopsida Ericales Ericaceae Epacris Budawangs Cliff-heath
108 Litoria watsoni Endangered Endangered Endangered 7244177 Litoria watsoni Watson's Tree Frog https://biodiversity.org.au/afd/taxa/95cf54aa-... dr650 Litoria watsoni Watson's Tree Frog Species Hylidae https://biodiversity.org.au/afd/taxa/95cf54aa-... Mahony, Moses, Mahony, Lemckert & Donnellan, 2020 species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Watson's Tree Frog
[109 rows x 23 columns]
Download shapefile
To retrieve the spatial outline of Shoalhaven, let’s download the latest Local Government Areas data from the Australian Bureau of Statistics Digital Boundary files page. Find “Local Government Areas - 2025 - Shapefile” and click “Download ZIP”. Save the zip folder in your current directory and unzip it.
Let’s read the file into Python.
lgas = gpd.read_file('LGA_2025_AUST_GDA2020.zip')
lgas LGA_CODE23 LGA_NAME23 STE_CODE21 STE_NAME21 AUS_CODE21 AUS_NAME21 AREASQKM LOCI_URI21 geometry
0 10050 Albury 1 New South Wales AUS Australia 305.6386 https://linked.data.gov.au/dataset/asgsed3/LGA... POLYGON ((146.86566 -36.07292, 146.86512 -36.0...
1 10180 Armidale 1 New South Wales AUS Australia 7809.4406 https://linked.data.gov.au/dataset/asgsed3/LGA... POLYGON ((152.38816 -30.52639, 152.38812 -30.5...
2 10250 Ballina 1 New South Wales AUS Australia 484.9692 https://linked.data.gov.au/dataset/asgsed3/LGA... MULTIPOLYGON (((153.57106 -28.87381, 153.57106...
3 10300 Balranald 1 New South Wales AUS Australia 21690.7493 https://linked.data.gov.au/dataset/asgsed3/LGA... POLYGON ((143.00433 -33.78164, 143.01538 -33.7...
4 10470 Bathurst 1 New South Wales AUS Australia 3817.8645 https://linked.data.gov.au/dataset/asgsed3/LGA... POLYGON ((149.84877 -33.52784, 149.84864 -33.5...
.. ... ... ... ... ... ... ... ... ...
561 89799 Migratory - Offshore - Shipping (ACT) 8 Australian Capital Territory AUS Australia NaN https://linked.data.gov.au/dataset/asgsed3/LGA... None
562 99399 Unincorp. Other Territories 9 Other Territories AUS Australia 105.8806 https://linked.data.gov.au/dataset/asgsed3/LGA... MULTIPOLYGON (((167.94747 -29.12757, 167.94748...
563 99499 No usual address (OT) 9 Other Territories AUS Australia NaN https://linked.data.gov.au/dataset/asgsed3/LGA... None
564 99799 Migratory - Offshore - Shipping (OT) 9 Other Territories AUS Australia NaN https://linked.data.gov.au/dataset/asgsed3/LGA... None
565 ZZZZZ Outside Australia Z Outside Australia ZZZ Outside Australia NaN https://linked.data.gov.au/dataset/asgsed3/LGA... None
[566 rows x 9 columns]
Now let’s transform our shapefile to use the Coordinate Reference System (CRS) EPSG:4326 (the standard used in cartography and GPS, also known as WGS84) so that it matches the projection of our data from the ALA 3.
lgas_wgs84 = lgas.to_crs(4326)Next we’ll filter our shapefile to Shoalhaven. The column LGA_NAME23 contains area names, and we can filter our data frame to only rows where LGA_NAME25 is equal to Shoalhaven. We are left with a single polygon shape of Shoalhaven.
We will also simplify the shapefile4 using shapely.simplify() from the shapely package because complex shapefiles can sometimes cause problems with sending queries to the ALA.
shoalhaven = lgas_wgs84[lgas_wgs84['LGA_NAME23'] == 'Shoalhaven']
shoalhaven_simplify = shapely.simplify(shoalhaven['geometry'][shoalhaven.index[0]],tolerance=4)Download data
Now that shoalhaven contains our LGA shape, we can build our query. Once again, we’ll begin with galah_call() and filter to only records from 2024. We can specify that we want records within shoalhaven using geolocate(). To make sure we return taxonomic information at the level occurrences were identified to, we’ll group_by(taxonConceptID), which is a unique ID attached to each occurrence record’s taxonomic identification (read the box below for more on what this means). Finally, we can return a species list by ending our query with atlas_species().
By default atlas_species() only returns taxonomic information at the species level. This means that if some species are identified to subspecies on a specific list like the NSW Conservation Status list, atlas_species() will return the species-level match, rather than the subspecies-level match. For example, the name "Potorous tridactylus" is returned instead of "Potorous tridactylus tridactylus".
Grouping by taxonConceptID like we do below specifies that we wish to match to the identified taxon, rather than only to the species level.
# shoalhaven index
species_shoal = galah.atlas_species(
filters = ['year=2024'],
polygon = shoalhaven_simplify,
group_by = 'taxonConceptID'
)
species_shoal taxonConceptID Species Name Scientific Name Authorship Taxon Rank Kingdom Phylum Class Order Family Genus Vernacular Name
0 https://biodiversity.org.au/afd/taxa/e9d6fbbd-... Phascolarctos cinereus (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala
1 https://biodiversity.org.au/afd/taxa/f2f43ef9-... Macropus giganteus Shaw, 1790 species Animalia Chordata Mammalia Diprotodontia Macropodidae Macropus Eastern Grey Kangaroo
2 https://biodiversity.org.au/afd/taxa/4dfe64e2-... Trichoglossus moluccanus (Gmelin, 1788) species Animalia Chordata Aves Psittaciformes Psittacidae Trichoglossus Rainbow Lorikeet
3 https://biodiversity.org.au/afd/taxa/1fc76c4d-... Dacelo (Dacelo) novaeguineae (Hermann, 1783) species Animalia Chordata Aves Coraciiformes Alcedinidae Dacelo Laughing Kookaburra
4 https://biodiversity.org.au/afd/taxa/5e0f496f-... Platycercus (Platycercus) elegans (Gmelin, 1788) species Animalia Chordata Aves Psittaciformes Psittacidae Platycercus Crimson Rosella
... ... ... ... ... ... ... ... ... ... ... ...
3235 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum appendiculatum Nicholls species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Tailed Leek-orchid
3236 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum brevilabre (Lindl.) Hook.f. species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Short-lipped Leek Orchid
3237 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum gracile Lindl. species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Little Laughing Leek Orchid
3238 https://id.biodiversity.org.au/taxon/apni/5179... Prasophyllum sylvestre R.J.Bates & D.L.Jones species Plantae Charophyta Equisetopsida Asparagales Orchidaceae Prasophyllum Forest Leek Orchid
3239 https://id.biodiversity.org.au/taxon/apni/5179... Plantae Haeckel kingdom Plantae NaN NaN NaN NaN NaN NaN
[3240 rows x 11 columns]
It’s also possible to return the observations counts by ending our query with atlas_counts(). In this case, we can group by scientificName (the name of the lowest level the observation was identified).
galah.atlas_counts(
filters = ['year=2024'],
polygon = shoalhaven_simplify,
group_by = 'scientificName'
) scientificName count
0 'Ochlerotatus' ('Finlaya') britteni 1
1 'Ochlerotatus' ('Finlaya') mallochi 1
2 'Ochlerotatus' ('Finlaya') wasselli 1
3 ACALYPTRATAE 469
4 ACANTHASTERIDAE 1
... ... ...
58189 Zyzomys argurus 7
58190 Zyzomys maini 1
58191 Zyzzyzus 1
58192 [Pytinaea group] schistopa 42
58193 ×Graptosedum 1
[58194 rows x 2 columns]
Use external list
We can use our own conservation status lists from an external source to compare to our Shoalhaven species list. As an example, we are using the the New South Wales Conservation Status List downloaded from the NSW Bionet Atlas website5.
We downloaded this list on 2025/07/08. To download a complete NSW threatened species list, we selected the following options:
- Which species or group? All entities
- Legal status? Select records that fall under one or more categories ➝ Threatened NSW
- What area? Entire area
- Period of records? All records
- Status? Valid records only
Save the downloaded .xls file in your working directory. We’ll read in our .xls file, which we have renamed to nsw_threatened.xls.
nsw_threatened_list = pd.read_excel('path/to/nsw_threatened.xlsx', skiprows = 3) # skip first 3 rowsIt’s possible you might receive the following error.
Error:
filepath: [path-to-file]
libxls error: Unable to open file
This relates to a formatting issue preventing read_excel() from reading the file correctly, which seems related to the way BioNet saves its files. To fix this issue, open the list file on your computer, then re-save the file as a .xlsx document (File ➝ Save As ➝ select file format.xlsx ➝ Save). Then you can use read_excel() to read the new file in.
nsw_threatened_list = pd.read_excel('path/to/nsw_threatened.xlsx', skiprows = 3) # skip first three rowsCross-reference with threatened species lists
First we’ll clean the column names to make them easier to use in Python using the amazing function clean_names() in the janitor package. We also need to remove the ^ that precedes some names on the list.
from janitor import clean_names
nsw_threatened_list = clean_names(nsw_threatened_list)
nsw_threatened_list kingdom class family species_code scientific_name exotic common_name nsw_status comm_status records info
0 Animalia Amphibia Myobatrachidae 3007 Assa darlingtoni NaN Pouched Frog V,P V 656 NaN
1 Animalia Amphibia Myobatrachidae 3135 Crinia sloanei NaN Sloane's Froglet E1,P E 849 NaN
2 Animalia Amphibia Myobatrachidae 3137 Crinia tinnula NaN Wallum Froglet V,P NaN 2653 NaN
3 Animalia Amphibia Myobatrachidae 3073 ^Mixophyes balbus NaN Stuttering Frog E1,P,2 V 2013 NaN
4 Animalia Amphibia Myobatrachidae 3008 ^Mixophyes fleayi NaN Fleay's Barred Frog E1,P,2 E 1539 NaN
... ... ... ... ... ... ... ... ... ... ... ...
1213 Threat NaN NaN NaN Predation by the European Red Fox Vulpes Vulpe... NaN Predation by the European Red Fox Vulpes Vulpe... KTP KTP P NaN
1214 Threat NaN NaN NaN Predation by the Feral Cat Felis catus (Linnae... NaN Predation by the Feral Cat Felis catus (Linnae... KTP KTP P NaN
1215 Threat NaN NaN NaN Predation by the Ship Rat Rattus rattus on Lor... NaN Predation by the Ship Rat Rattus rattus on Lor... KTP KTP P NaN
1216 Threat NaN NaN NaN Predation, habitat degradation, competition an... NaN Predation, habitat degradation, competition an... KTP KTP P NaN
1217 Threat NaN NaN NaN Removal of dead wood and dead trees NaN Removal of dead wood and dead trees KTP NaN P NaN
[1218 rows x 11 columns]
Now we can filter our Shoalhaven list to only those that match names in nsw_threatened_list.
species_shoal = clean_names(species_shoal)
threatened_filter = species_shoal[species_shoal['species_name'].isin(nsw_threatened_list['scientific_name'].unique())].reset_index(drop=True)
threatened_filter taxonconceptid species_name scientific_name_authorship taxon_rank kingdom phylum class order family genus vernacular_name
0 https://biodiversity.org.au/afd/taxa/e9d6fbbd-... Phascolarctos cinereus (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala
1 https://biodiversity.org.au/afd/taxa/ec2c76c7-... Haematopus longirostris Vieillot, 1817 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Australian Pied Oystercatcher
2 https://biodiversity.org.au/afd/taxa/73c23669-... Dasyurus maculatus (Kerr, 1792) species Animalia Chordata Mammalia Dasyuromorphia Dasyuridae Dasyurus Bindjulang
3 https://biodiversity.org.au/afd/taxa/ff90b63a-... Perameles nasuta Geoffroy, 1804 species Animalia Chordata Mammalia Peramelemorphia Peramelidae Perameles Long-nosed Bandicoot
4 https://biodiversity.org.au/afd/taxa/05b0f88f-... Haematopus fuliginosus Gould, 1845 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Sooty Oystercatcher
5 https://biodiversity.org.au/afd/taxa/2e27790b-... Pycnoptilus floccosus Gould, 1851 species Animalia Chordata Aves Passeriformes Acanthizidae Pycnoptilus Pilotbird
6 https://biodiversity.org.au/afd/taxa/f9a68186-... Esacus magnirostris Vieillot, 1818 species Animalia Chordata Aves Charadriiformes Burhinidae Esacus Beach Stone-curlew
7 https://biodiversity.org.au/afd/taxa/6485cd0c-... Hirundapus caudacutus (Latham, 1801) species Animalia Chordata Aves Apodiformes Apodidae Hirundapus White-throated Needletail
8 https://biodiversity.org.au/afd/taxa/77bcae99-... Pteropus poliocephalus Temminck, 1825 species Animalia Chordata Mammalia Chiroptera Pteropodidae Pteropus Grey-headed Flying-fox
9 https://biodiversity.org.au/afd/taxa/2a4e373b-... Dromaius novaehollandiae (Latham, 1790) species Animalia Chordata Aves Struthioniformes Casuariidae Dromaius Emu
10 https://biodiversity.org.au/afd/taxa/5e2dc7c9-... Petauroides volans (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Pseudocheiridae Petauroides Southern Greater Glider
11 https://id.biodiversity.org.au/node/apni/2889553 Plinthanthesis rodwayi (C.E.Hubb.) S.T.Blake species Plantae Charophyta Equisetopsida Poales Poaceae Plinthanthesis Budawangs Wallaby Grass
12 https://biodiversity.org.au/afd/taxa/35359d1d-... Sternula albifrons (Pallas, 1764) species Animalia Chordata Aves Charadriiformes Laridae Sternula Little Tern
13 https://biodiversity.org.au/afd/taxa/61e18b9c-... Petaurus australis Shaw, 1791 species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Yellow-bellied Glider
14 https://biodiversity.org.au/afd/taxa/9a3b1c00-... Cercartetus nanus (Desmarest, 1818) species Animalia Chordata Mammalia Diprotodontia Burramyidae Cercartetus Eastern Pygmy-possum
15 https://biodiversity.org.au/afd/taxa/910b27e8-... Caretta caretta (Linnaeus, 1758) species Animalia Chordata Reptilia Testudines Cheloniidae Caretta Loggerhead Turtle
16 https://id.biodiversity.org.au/node/apni/2895554 Callitris oblonga subsp. corangensis K.D.Hill subspecies Plantae Charophyta Equisetopsida Pinales Cupressaceae Callitris NaN
17 https://id.biodiversity.org.au/taxon/apni/5144... Zieria smithii Andrews species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria Sandfly Zieria
18 https://biodiversity.org.au/afd/taxa/95cf54aa-... Litoria watsoni Mahony, Moses, Mahony, Lemckert & Donnellan, 2020 species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Watson's Tree Frog
19 https://biodiversity.org.au/afd/taxa/f2daa035-... Thalassarche melanophris (Temminck, 1828) species Animalia Chordata Aves Procellariiformes Diomedeidae Thalassarche Black-browed Albatross
20 https://biodiversity.org.au/afd/taxa/694a8fde-... Circus assimilis Jardine & Selby, 1828 species Animalia Chordata Aves Accipitriformes Accipitridae Circus Spotted Harrier
21 https://biodiversity.org.au/afd/taxa/758cd11a-... Parvipsitta pusilla (Shaw, 1790) species Animalia Chordata Aves Psittaciformes Psittacidae Parvipsitta Little Lorikeet
22 https://biodiversity.org.au/afd/taxa/ff911741-... Myotis macropus (Gould, 1855) species Animalia Chordata Mammalia Chiroptera Vespertilionidae Myotis Southern Myotis
23 https://id.biodiversity.org.au/node/apni/2916958 Triplarina nowraensis A.R.Bean species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Triplarina Nowra Heath Myrtle
24 https://id.biodiversity.org.au/taxon/apni/5178... Rhodamnia rubescens (Benth.) Miq. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Rhodamnia Scrub Turpentine
25 https://biodiversity.org.au/afd/taxa/1da10dca-... Miniopterus australis (Tomes, 1858) species Animalia Chordata Mammalia Chiroptera Miniopteridae Miniopterus Little Bentwing-bat
26 https://biodiversity.org.au/afd/taxa/2d605472-... Chelonia mydas (Linnaeus, 1758) species Animalia Chordata Reptilia Testudines Cheloniidae Chelonia Green Turtle
27 https://biodiversity.org.au/afd/taxa/598c4bf0-... Arctocephalus forsteri (Lesson, 1828) species Animalia Chordata Mammalia Carnivora Otariidae Arctocephalus Long-nosed Fur Seal
28 https://biodiversity.org.au/afd/taxa/a2a1bdc0-... Saccolaimus flaviventris (Peters, 1867) species Animalia Chordata Mammalia Chiroptera Emballonuridae Saccolaimus Yellow-bellied Sheathtail-bat
29 https://biodiversity.org.au/afd/taxa/b0592117-... Thalassarche cauta (Gould, 1841) species Animalia Chordata Aves Procellariiformes Diomedeidae Thalassarche Shy Albatross
30 https://biodiversity.org.au/afd/taxa/e0c68347-... Eudyptula minor (J.R. Forster, 1781) species Animalia Chordata Aves Sphenisciformes Spheniscidae Eudyptula Little Penguin
31 https://id.biodiversity.org.au/node/apni/2893137 Prostanthera saxicola R.Br. species Plantae Charophyta Equisetopsida Lamiales Lamiaceae Prostanthera NaN
32 https://id.biodiversity.org.au/node/apni/2897476 Pultenaea baeuerlenii F.Muell. species Plantae Charophyta Equisetopsida Fabales Fabaceae Pultenaea Budawangs Bush-pea
33 https://id.biodiversity.org.au/node/apni/2914587 Zieria murphyi Blakely species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria Velvet Zieria
34 https://id.biodiversity.org.au/node/apni/2917666 Pultenaea villifera Sieber ex DC. species Plantae Charophyta Equisetopsida Fabales Fabaceae Pultenaea NaN
35 https://biodiversity.org.au/afd/taxa/2c8ae25f-... Petaurus norfolcensis (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider
36 https://biodiversity.org.au/afd/taxa/44e919a7-... Mastacomys fuscus mordicus Thomas, 1922 subspecies Animalia Chordata Mammalia Rodentia Muridae Mastacomys Broad-toothed Rat
37 https://biodiversity.org.au/afd/taxa/51a873f5-... Litoria aurea (Lesson, 1829) species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Green And Gold Bell Frog
38 https://biodiversity.org.au/afd/taxa/69db15c5-... Varanus rosenbergi Mertens, 1957 species Animalia Chordata Reptilia Squamata Varanidae Varanus Heath Monitor
39 https://biodiversity.org.au/afd/taxa/7357a9df-... Falsistrellus tasmaniensis (Gould, 1858) species Animalia Chordata Mammalia Chiroptera Vespertilionidae Falsistrellus Eastern False Pipistrelle
40 https://biodiversity.org.au/afd/taxa/76823089-... Petalura gigantea Leach, 1815 species Animalia Arthropoda Insecta Odonata Petaluridae Petalura South-eastern Petaltail
41 https://biodiversity.org.au/afd/taxa/b9b34bcf-... Micronomus norfolkensis (J.E. Gray, 1839) species Animalia Chordata Mammalia Chiroptera Molossidae Micronomus Eastern Freetail-bat
42 https://biodiversity.org.au/afd/taxa/d497c571-... Heleioporus australiacus (Shaw & Nodder, 1795) species Animalia Chordata Amphibia Anura Limnodynastidae Heleioporus Giant Burrowing Frog
43 https://biodiversity.org.au/afd/taxa/ecb2030b-... Ixobrychus flavicollis (Latham, 1790) species Animalia Chordata Aves Ciconiiformes Ardeidae Ixobrychus Black Bittern
44 https://id.biodiversity.org.au/node/apni/2888006 Zieria involucrata R.Br. ex Benth. species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria NaN
45 https://id.biodiversity.org.au/node/apni/2896108 Melaleuca biconvexa Byrnes species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Melaleuca Biconvex Paperbark
46 https://id.biodiversity.org.au/node/apni/2900460 Eucalyptus sturgissiana L.A.S.Johnson & Blaxell species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Eucalyptus Ettrema Mallee
47 https://id.biodiversity.org.au/taxon/apni/5128... Epacris gnidioides (Summerh.) E.A.Br. species Plantae Charophyta Equisetopsida Ericales Ericaceae Epacris Budawangs Cliff-heath
48 https://id.biodiversity.org.au/taxon/apni/5144... Syzygium paniculatum Gaertn. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Syzygium Magenta Lilly Pilly
To preserve status information, instead we can join species_shoal and nsw_threatened_list dataframes, which will retain columns while still filtering results.
threatened_joined = pd.merge(species_shoal, nsw_threatened_list,
left_on = 'species_name', right_on = 'scientific_name'
).dropna(subset = ['nsw_status'])
threatened_joined taxonconceptid species_name scientific_name_authorship taxon_rank kingdom_x phylum class_x order family_x genus vernacular_name kingdom_y class_y family_y species_code scientific_name exotic common_name nsw_status comm_status records info
0 https://biodiversity.org.au/afd/taxa/e9d6fbbd-... Phascolarctos cinereus (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala Animalia Mammalia Phascolarctidae 1162 Phascolarctos cinereus NaN Koala E1,P E 138012 NaN
1 https://biodiversity.org.au/afd/taxa/ec2c76c7-... Haematopus longirostris Vieillot, 1817 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Australian Pied Oystercatcher Animalia Aves Haematopodidae 0130 Haematopus longirostris NaN Pied Oystercatcher E1,P NaN 6019 NaN
2 https://biodiversity.org.au/afd/taxa/73c23669-... Dasyurus maculatus (Kerr, 1792) species Animalia Chordata Mammalia Dasyuromorphia Dasyuridae Dasyurus Bindjulang Animalia Mammalia Dasyuridae 1008 Dasyurus maculatus NaN Spotted-tailed Quoll V,P E 14073 NaN
3 https://biodiversity.org.au/afd/taxa/ff90b63a-... Perameles nasuta Geoffroy, 1804 species Animalia Chordata Mammalia Peramelemorphia Peramelidae Perameles Long-nosed Bandicoot Animalia Mammalia Peramelidae 1097 Perameles nasuta NaN Long-nosed Bandicoot population in inner weste... E2,P NaN 26 NaN
4 https://biodiversity.org.au/afd/taxa/ff90b63a-... Perameles nasuta Geoffroy, 1804 species Animalia Chordata Mammalia Peramelemorphia Peramelidae Perameles Long-nosed Bandicoot Animalia Mammalia Peramelidae 1097 Perameles nasuta NaN Long-nosed Bandicoot, North Head E2,P NaN 6029 NaN
5 https://biodiversity.org.au/afd/taxa/05b0f88f-... Haematopus fuliginosus Gould, 1845 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Sooty Oystercatcher Animalia Aves Haematopodidae 0131 Haematopus fuliginosus NaN Sooty Oystercatcher V,P NaN 1994 NaN
6 https://biodiversity.org.au/afd/taxa/2e27790b-... Pycnoptilus floccosus Gould, 1851 species Animalia Chordata Aves Passeriformes Acanthizidae Pycnoptilus Pilotbird Animalia Aves Dasyornithidae 0506 Pycnoptilus floccosus NaN Pilotbird V,P V 2448 NaN
7 https://biodiversity.org.au/afd/taxa/f9a68186-... Esacus magnirostris Vieillot, 1818 species Animalia Chordata Aves Charadriiformes Burhinidae Esacus Beach Stone-curlew Animalia Aves Burhinidae 0175 Esacus magnirostris NaN Beach Stone-curlew E4A,P NaN 692 NaN
8 https://biodiversity.org.au/afd/taxa/6485cd0c-... Hirundapus caudacutus (Latham, 1801) species Animalia Chordata Aves Apodiformes Apodidae Hirundapus White-throated Needletail Animalia Aves Apodidae 0334 Hirundapus caudacutus NaN White-throated Needletail V,P V,C,J,K 3150 NaN
9 https://biodiversity.org.au/afd/taxa/77bcae99-... Pteropus poliocephalus Temminck, 1825 species Animalia Chordata Mammalia Chiroptera Pteropodidae Pteropus Grey-headed Flying-fox Animalia Mammalia Pteropodidae 1280 Pteropus poliocephalus NaN Grey-headed Flying-fox V,P V 62550 NaN
10 https://biodiversity.org.au/afd/taxa/2a4e373b-... Dromaius novaehollandiae (Latham, 1790) species Animalia Chordata Aves Struthioniformes Casuariidae Dromaius Emu Animalia Aves Casuariidae 0001 Dromaius novaehollandiae NaN Emu population in the New South Wales North Co... E2,P NaN 4414 NaN
11 https://biodiversity.org.au/afd/taxa/5e2dc7c9-... Petauroides volans (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Pseudocheiridae Petauroides Southern Greater Glider Animalia Mammalia Pseudocheiridae 1133 Petauroides volans NaN Southern Greater Glider E1,P E 25707 NaN
12 https://id.biodiversity.org.au/node/apni/2889553 Plinthanthesis rodwayi (C.E.Hubb.) S.T.Blake species Plantae Charophyta Equisetopsida Poales Poaceae Plinthanthesis Budawangs Wallaby Grass Plantae Flora Poaceae 5118 Plinthanthesis rodwayi NaN Budawangs Wallaby Grass E4A CE 196 NaN
13 https://biodiversity.org.au/afd/taxa/35359d1d-... Sternula albifrons (Pallas, 1764) species Animalia Chordata Aves Charadriiformes Laridae Sternula Little Tern Animalia Aves Laridae 0117 Sternula albifrons NaN Little Tern E1,P C,J,K 9000 NaN
14 https://biodiversity.org.au/afd/taxa/61e18b9c-... Petaurus australis Shaw, 1791 species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Yellow-bellied Glider Animalia Mammalia Petauridae 1136 Petaurus australis NaN Yellow-bellied Glider V,P V 18013 NaN
15 https://biodiversity.org.au/afd/taxa/61e18b9c-... Petaurus australis Shaw, 1791 species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Yellow-bellied Glider Animalia Mammalia Petauridae 1136 Petaurus australis NaN Yellow-bellied Glider population on the Bago P... E2,V,P V 507 NaN
16 https://biodiversity.org.au/afd/taxa/9a3b1c00-... Cercartetus nanus (Desmarest, 1818) species Animalia Chordata Mammalia Diprotodontia Burramyidae Cercartetus Eastern Pygmy-possum Animalia Mammalia Burramyidae 1150 Cercartetus nanus NaN Eastern Pygmy-possum V,P NaN 4757 NaN
17 https://biodiversity.org.au/afd/taxa/910b27e8-... Caretta caretta (Linnaeus, 1758) species Animalia Chordata Reptilia Testudines Cheloniidae Caretta Loggerhead Turtle Animalia Reptilia Cheloniidae 2004 Caretta caretta NaN Loggerhead Turtle E1,P E 808 NaN
18 https://id.biodiversity.org.au/node/apni/2895554 Callitris oblonga subsp. corangensis K.D.Hill subspecies Plantae Charophyta Equisetopsida Pinales Cupressaceae Callitris NaN Plantae Flora Cupressaceae 9985 Callitris oblonga subsp. corangensis NaN NaN E4A CE 26 NaN
19 https://id.biodiversity.org.au/taxon/apni/5144... Zieria smithii Andrews species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria Sandfly Zieria Plantae Flora Rutaceae 5847 Zieria smithii NaN Low growing form of Z. smithii, Diggers Head E2 NaN 2 NaN
20 https://biodiversity.org.au/afd/taxa/95cf54aa-... Litoria watsoni Mahony, Moses, Mahony, Lemckert & Donnellan, 2020 species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Watson's Tree Frog Animalia Amphibia Hylidae T1122 Litoria watsoni NaN Watson's Tree Frog E1 E 192 NaN
21 https://biodiversity.org.au/afd/taxa/f2daa035-... Thalassarche melanophris (Temminck, 1828) species Animalia Chordata Aves Procellariiformes Diomedeidae Thalassarche Black-browed Albatross Animalia Aves Diomedeidae 0088 Thalassarche melanophris NaN Black-browed Albatross V,P V 399 NaN
22 https://biodiversity.org.au/afd/taxa/694a8fde-... Circus assimilis Jardine & Selby, 1828 species Animalia Chordata Aves Accipitriformes Accipitridae Circus Spotted Harrier Animalia Aves Accipitridae 0218 Circus assimilis NaN Spotted Harrier V,P NaN 1170 NaN
23 https://biodiversity.org.au/afd/taxa/758cd11a-... Parvipsitta pusilla (Shaw, 1790) species Animalia Chordata Aves Psittaciformes Psittacidae Parvipsitta Little Lorikeet Animalia Aves Psittacidae 0260 Parvipsitta pusilla NaN Little Lorikeet V,P NaN 5873 NaN
24 https://biodiversity.org.au/afd/taxa/ff911741-... Myotis macropus (Gould, 1855) species Animalia Chordata Mammalia Chiroptera Vespertilionidae Myotis Southern Myotis Animalia Mammalia Vespertilionidae 1357 Myotis macropus NaN Southern Myotis V,P NaN 5756 NaN
25 https://id.biodiversity.org.au/node/apni/2916958 Triplarina nowraensis A.R.Bean species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Triplarina Nowra Heath Myrtle Plantae Flora Myrtaceae 9618 Triplarina nowraensis NaN Nowra Heath Myrtle E1 E 567 NaN
26 https://id.biodiversity.org.au/taxon/apni/5178... Rhodamnia rubescens (Benth.) Miq. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Rhodamnia Scrub Turpentine Plantae Flora Myrtaceae 4283 Rhodamnia rubescens NaN Scrub Turpentine E4A CE 10566 NaN
27 https://biodiversity.org.au/afd/taxa/1da10dca-... Miniopterus australis (Tomes, 1858) species Animalia Chordata Mammalia Chiroptera Miniopteridae Miniopterus Little Bentwing-bat Animalia Mammalia Miniopteridae 1346 Miniopterus australis NaN Little Bent-winged Bat V,P NaN 6923 NaN
28 https://biodiversity.org.au/afd/taxa/2d605472-... Chelonia mydas (Linnaeus, 1758) species Animalia Chordata Reptilia Testudines Cheloniidae Chelonia Green Turtle Animalia Reptilia Cheloniidae 2007 Chelonia mydas NaN Green Turtle V,P V 1440 NaN
29 https://biodiversity.org.au/afd/taxa/598c4bf0-... Arctocephalus forsteri (Lesson, 1828) species Animalia Chordata Mammalia Carnivora Otariidae Arctocephalus Long-nosed Fur Seal Animalia Mammalia Otariidae 1543 Arctocephalus forsteri NaN New Zealand Fur-seal V,P NaN 344 NaN
30 https://biodiversity.org.au/afd/taxa/a2a1bdc0-... Saccolaimus flaviventris (Peters, 1867) species Animalia Chordata Mammalia Chiroptera Emballonuridae Saccolaimus Yellow-bellied Sheathtail-bat Animalia Mammalia Emballonuridae 1321 Saccolaimus flaviventris NaN Yellow-bellied Sheathtail-bat V,P NaN 3705 NaN
31 https://biodiversity.org.au/afd/taxa/b0592117-... Thalassarche cauta (Gould, 1841) species Animalia Chordata Aves Procellariiformes Diomedeidae Thalassarche Shy Albatross Animalia Aves Diomedeidae 0091 Thalassarche cauta NaN Shy Albatross E1,P E 184 NaN
32 https://biodiversity.org.au/afd/taxa/e0c68347-... Eudyptula minor (J.R. Forster, 1781) species Animalia Chordata Aves Sphenisciformes Spheniscidae Eudyptula Little Penguin Animalia Aves Spheniscidae 0005 Eudyptula minor NaN Little Penguin in the Manly Point Area (being ... E2,P NaN 79 NaN
33 https://id.biodiversity.org.au/node/apni/2893137 Prostanthera saxicola R.Br. species Plantae Charophyta Equisetopsida Lamiales Lamiaceae Prostanthera NaN Plantae Flora Lamiaceae 3429 Prostanthera saxicola NaN Prostanthera saxicola population in Sutherland... E2 NaN 6 NaN
34 https://id.biodiversity.org.au/node/apni/2897476 Pultenaea baeuerlenii F.Muell. species Plantae Charophyta Equisetopsida Fabales Fabaceae Pultenaea Budawangs Bush-pea Plantae Flora Fabaceae (Faboideae) 2975 Pultenaea baeuerlenii NaN Budawangs Bush-pea E1 E 21 NaN
35 https://id.biodiversity.org.au/node/apni/2914587 Zieria murphyi Blakely species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria Velvet Zieria Plantae Flora Rutaceae 5843 Zieria murphyi NaN Velvet Zieria V V 53 NaN
36 https://id.biodiversity.org.au/node/apni/2917666 Pultenaea villifera Sieber ex DC. species Plantae Charophyta Equisetopsida Fabales Fabaceae Pultenaea NaN Plantae Flora Fabaceae (Faboideae) 3022 Pultenaea villifera NaN Pultenaea villifera Sieber ex DC. population i... E2 NaN 575 NaN
37 https://biodiversity.org.au/afd/taxa/2c8ae25f-... Petaurus norfolcensis (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider Animalia Mammalia Petauridae 1137 Petaurus norfolcensis NaN Squirrel Glider in the Wagga Wagga Local Gover... E2,V,P NaN 590 NaN
38 https://biodiversity.org.au/afd/taxa/2c8ae25f-... Petaurus norfolcensis (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider Animalia Mammalia Petauridae 1137 Petaurus norfolcensis NaN Squirrel Glider V,P NaN 6295 NaN
39 https://biodiversity.org.au/afd/taxa/2c8ae25f-... Petaurus norfolcensis (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider Animalia Mammalia Petauridae 1137 Petaurus norfolcensis NaN Squirrel Glider on Barrenjoey Peninsula, north... E2,V,P NaN 1 NaN
40 https://biodiversity.org.au/afd/taxa/44e919a7-... Mastacomys fuscus mordicus Thomas, 1922 subspecies Animalia Chordata Mammalia Rodentia Muridae Mastacomys Broad-toothed Rat Animalia Mammalia Muridae 1848 Mastacomys fuscus mordicus NaN Broad-toothed Rat E1,P E 1168 NaN
41 https://biodiversity.org.au/afd/taxa/51a873f5-... Litoria aurea (Lesson, 1829) species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Green And Gold Bell Frog Animalia Amphibia Hylidae 3166 Litoria aurea NaN Green and Golden Bell Frog E1,P V 34174 NaN
42 https://biodiversity.org.au/afd/taxa/69db15c5-... Varanus rosenbergi Mertens, 1957 species Animalia Chordata Reptilia Squamata Varanidae Varanus Heath Monitor Animalia Reptilia Varanidae 2287 Varanus rosenbergi NaN Rosenberg's Goanna V,P NaN 584 NaN
43 https://biodiversity.org.au/afd/taxa/7357a9df-... Falsistrellus tasmaniensis (Gould, 1858) species Animalia Chordata Mammalia Chiroptera Vespertilionidae Falsistrellus Eastern False Pipistrelle Animalia Mammalia Vespertilionidae 1372 Falsistrellus tasmaniensis NaN Eastern False Pipistrelle V,P NaN 3551 NaN
44 https://biodiversity.org.au/afd/taxa/76823089-... Petalura gigantea Leach, 1815 species Animalia Arthropoda Insecta Odonata Petaluridae Petalura South-eastern Petaltail Animalia Insecta Petaluridae I007 Petalura gigantea NaN Giant Dragonfly E1 NaN 1043 NaN
45 https://biodiversity.org.au/afd/taxa/b9b34bcf-... Micronomus norfolkensis (J.E. Gray, 1839) species Animalia Chordata Mammalia Chiroptera Molossidae Micronomus Eastern Freetail-bat Animalia Mammalia Molossidae 1329 Micronomus norfolkensis NaN Eastern Coastal Free-tailed Bat V,P NaN 3018 NaN
46 https://biodiversity.org.au/afd/taxa/d497c571-... Heleioporus australiacus (Shaw & Nodder, 1795) species Animalia Chordata Amphibia Anura Limnodynastidae Heleioporus Giant Burrowing Frog Animalia Amphibia Limnodynastidae 3042 Heleioporus australiacus NaN Giant Burrowing Frog V,P V 1058 NaN
47 https://biodiversity.org.au/afd/taxa/ecb2030b-... Ixobrychus flavicollis (Latham, 1790) species Animalia Chordata Aves Ciconiiformes Ardeidae Ixobrychus Black Bittern Animalia Aves Ardeidae 0196 Ixobrychus flavicollis NaN Black Bittern V,P NaN 437 NaN
48 https://id.biodiversity.org.au/node/apni/2888006 Zieria involucrata R.Br. ex Benth. species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria NaN Plantae Flora Rutaceae 5840 Zieria involucrata NaN NaN E1 V 2136 NaN
49 https://id.biodiversity.org.au/node/apni/2896108 Melaleuca biconvexa Byrnes species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Melaleuca Biconvex Paperbark Plantae Flora Myrtaceae 6809 Melaleuca biconvexa NaN Biconvex Paperbark V V 5903 NaN
50 https://id.biodiversity.org.au/node/apni/2900460 Eucalyptus sturgissiana L.A.S.Johnson & Blaxell species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Eucalyptus Ettrema Mallee Plantae Flora Myrtaceae 4190 Eucalyptus sturgissiana NaN Ettrema Mallee V NaN 303 NaN
51 https://id.biodiversity.org.au/taxon/apni/5128... Epacris gnidioides (Summerh.) E.A.Br. species Plantae Charophyta Equisetopsida Ericales Ericaceae Epacris Budawangs Cliff-heath Plantae Flora Ericaceae 15212 Epacris gnidioides NaN Budawangs Cliff-heath V V 65 NaN
52 https://id.biodiversity.org.au/taxon/apni/5144... Syzygium paniculatum Gaertn. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Syzygium Magenta Lilly Pilly Plantae Flora Myrtaceae 4293 Syzygium paniculatum NaN Magenta Lilly Pilly V V 1146 NaN
Species lists from BioNet Atlas can sometimes return both species and specific populations of the same species with their own conservation status, respectively. When matching species names, this means there can be multiple matches for the same species. For example, there are seperate conservation statuses assigned to the Yellow bellied glider and a Yellow bellied glider population in the Bago Plateau.
Code
threatened_joined[
threatened_joined['species_name'] == 'Petaurus australis'
][['species_name', 'common_name', 'nsw_status']] species_name common_name nsw_status
14 Petaurus australis Yellow-bellied Glider V,P
15 Petaurus australis Yellow-bellied Glider population on the Bago P... E2,V,P
These multiple statuses explain why there are several more rows when we join dataframes (threatened_joined) compared to when we filter by species names (threatened_filter).
You might notice that fewer species are returned when using an externally downloaded list than using galah. This discrepancy is due to differences in scientific names between those on the BioNet Atlas and those on the ALA. Names mismatches are a risk when using external species lists. Additional work is usually needed to avoid unexpected mismatches. The Cleaning Biodiversity Data in R book details some methods for finding name synonyms, but amending taxonomic names can be difficult.
When ALA ingests data, it matches those data to the ALA’s taxonomic backbone, with the goal of minimising name mismatches. We recommend using galah because it makes names matching easier. However, not all lists exist on the ALA, so some tasks inevitably require matching to externally downloaded lists.
To use this list for summarising or plotting, it might be useful to add to threatened_joined status information for each species as vulnerable, endangered, critically endangered or extinct. To add this info, we’ll extract the first value of nsw_status by removing everything after the first comma and save that value in nsw_status_extracted. Then we’ll recode these values6 and save them in nsw_status_simple.
# clean statuses
statuses = {'V': 'Vulnerable', 'E1': 'Endangered','E2': 'Endangered',
'E3': 'Endangered','E4A': 'Critically Endangered',
'E4': 'Extinct'}
threatened_clean = threatened_joined.copy()
threatened_clean['nsw_status_extracted'] = threatened_clean['nsw_status'].copy().replace({',P': ''},regex=True)
threatened_clean['nsw_status_simple'] = threatened_clean['nsw_status_extracted'].copy().replace(statuses)
# reposition columns
threatened_clean = threatened_clean[['nsw_status', 'nsw_status_extracted', 'nsw_status_simple', 'species_name'] + [col for col in threatened_clean.columns if col not in ['nsw_status', 'nsw_status_extracted', 'nsw_status_simple', 'species_name']]]
threatened_clean nsw_status nsw_status_extracted nsw_status_simple species_name taxonconceptid scientific_name_authorship taxon_rank kingdom_x phylum class_x order family_x genus vernacular_name kingdom_y class_y family_y species_code scientific_name exotic common_name comm_status records info
0 E1,P E1 Endangered Phascolarctos cinereus https://biodiversity.org.au/afd/taxa/e9d6fbbd-... (Goldfuss, 1817) species Animalia Chordata Mammalia Diprotodontia Phascolarctidae Phascolarctos Koala Animalia Mammalia Phascolarctidae 1162 Phascolarctos cinereus NaN Koala E 138012 NaN
1 E1,P E1 Endangered Haematopus longirostris https://biodiversity.org.au/afd/taxa/ec2c76c7-... Vieillot, 1817 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Australian Pied Oystercatcher Animalia Aves Haematopodidae 0130 Haematopus longirostris NaN Pied Oystercatcher NaN 6019 NaN
2 V,P V Vulnerable Dasyurus maculatus https://biodiversity.org.au/afd/taxa/73c23669-... (Kerr, 1792) species Animalia Chordata Mammalia Dasyuromorphia Dasyuridae Dasyurus Bindjulang Animalia Mammalia Dasyuridae 1008 Dasyurus maculatus NaN Spotted-tailed Quoll E 14073 NaN
3 E2,P E2 Endangered Perameles nasuta https://biodiversity.org.au/afd/taxa/ff90b63a-... Geoffroy, 1804 species Animalia Chordata Mammalia Peramelemorphia Peramelidae Perameles Long-nosed Bandicoot Animalia Mammalia Peramelidae 1097 Perameles nasuta NaN Long-nosed Bandicoot population in inner weste... NaN 26 NaN
4 E2,P E2 Endangered Perameles nasuta https://biodiversity.org.au/afd/taxa/ff90b63a-... Geoffroy, 1804 species Animalia Chordata Mammalia Peramelemorphia Peramelidae Perameles Long-nosed Bandicoot Animalia Mammalia Peramelidae 1097 Perameles nasuta NaN Long-nosed Bandicoot, North Head NaN 6029 NaN
5 V,P V Vulnerable Haematopus fuliginosus https://biodiversity.org.au/afd/taxa/05b0f88f-... Gould, 1845 species Animalia Chordata Aves Charadriiformes Haematopodidae Haematopus Sooty Oystercatcher Animalia Aves Haematopodidae 0131 Haematopus fuliginosus NaN Sooty Oystercatcher NaN 1994 NaN
6 V,P V Vulnerable Pycnoptilus floccosus https://biodiversity.org.au/afd/taxa/2e27790b-... Gould, 1851 species Animalia Chordata Aves Passeriformes Acanthizidae Pycnoptilus Pilotbird Animalia Aves Dasyornithidae 0506 Pycnoptilus floccosus NaN Pilotbird V 2448 NaN
7 E4A,P E4A Critically Endangered Esacus magnirostris https://biodiversity.org.au/afd/taxa/f9a68186-... Vieillot, 1818 species Animalia Chordata Aves Charadriiformes Burhinidae Esacus Beach Stone-curlew Animalia Aves Burhinidae 0175 Esacus magnirostris NaN Beach Stone-curlew NaN 692 NaN
8 V,P V Vulnerable Hirundapus caudacutus https://biodiversity.org.au/afd/taxa/6485cd0c-... (Latham, 1801) species Animalia Chordata Aves Apodiformes Apodidae Hirundapus White-throated Needletail Animalia Aves Apodidae 0334 Hirundapus caudacutus NaN White-throated Needletail V,C,J,K 3150 NaN
9 V,P V Vulnerable Pteropus poliocephalus https://biodiversity.org.au/afd/taxa/77bcae99-... Temminck, 1825 species Animalia Chordata Mammalia Chiroptera Pteropodidae Pteropus Grey-headed Flying-fox Animalia Mammalia Pteropodidae 1280 Pteropus poliocephalus NaN Grey-headed Flying-fox V 62550 NaN
10 E2,P E2 Endangered Dromaius novaehollandiae https://biodiversity.org.au/afd/taxa/2a4e373b-... (Latham, 1790) species Animalia Chordata Aves Struthioniformes Casuariidae Dromaius Emu Animalia Aves Casuariidae 0001 Dromaius novaehollandiae NaN Emu population in the New South Wales North Co... NaN 4414 NaN
11 E1,P E1 Endangered Petauroides volans https://biodiversity.org.au/afd/taxa/5e2dc7c9-... (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Pseudocheiridae Petauroides Southern Greater Glider Animalia Mammalia Pseudocheiridae 1133 Petauroides volans NaN Southern Greater Glider E 25707 NaN
12 E4A E4A Critically Endangered Plinthanthesis rodwayi https://id.biodiversity.org.au/node/apni/2889553 (C.E.Hubb.) S.T.Blake species Plantae Charophyta Equisetopsida Poales Poaceae Plinthanthesis Budawangs Wallaby Grass Plantae Flora Poaceae 5118 Plinthanthesis rodwayi NaN Budawangs Wallaby Grass CE 196 NaN
13 E1,P E1 Endangered Sternula albifrons https://biodiversity.org.au/afd/taxa/35359d1d-... (Pallas, 1764) species Animalia Chordata Aves Charadriiformes Laridae Sternula Little Tern Animalia Aves Laridae 0117 Sternula albifrons NaN Little Tern C,J,K 9000 NaN
14 V,P V Vulnerable Petaurus australis https://biodiversity.org.au/afd/taxa/61e18b9c-... Shaw, 1791 species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Yellow-bellied Glider Animalia Mammalia Petauridae 1136 Petaurus australis NaN Yellow-bellied Glider V 18013 NaN
15 E2,V,P E2,V E2,V Petaurus australis https://biodiversity.org.au/afd/taxa/61e18b9c-... Shaw, 1791 species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Yellow-bellied Glider Animalia Mammalia Petauridae 1136 Petaurus australis NaN Yellow-bellied Glider population on the Bago P... V 507 NaN
16 V,P V Vulnerable Cercartetus nanus https://biodiversity.org.au/afd/taxa/9a3b1c00-... (Desmarest, 1818) species Animalia Chordata Mammalia Diprotodontia Burramyidae Cercartetus Eastern Pygmy-possum Animalia Mammalia Burramyidae 1150 Cercartetus nanus NaN Eastern Pygmy-possum NaN 4757 NaN
17 E1,P E1 Endangered Caretta caretta https://biodiversity.org.au/afd/taxa/910b27e8-... (Linnaeus, 1758) species Animalia Chordata Reptilia Testudines Cheloniidae Caretta Loggerhead Turtle Animalia Reptilia Cheloniidae 2004 Caretta caretta NaN Loggerhead Turtle E 808 NaN
18 E4A E4A Critically Endangered Callitris oblonga subsp. corangensis https://id.biodiversity.org.au/node/apni/2895554 K.D.Hill subspecies Plantae Charophyta Equisetopsida Pinales Cupressaceae Callitris NaN Plantae Flora Cupressaceae 9985 Callitris oblonga subsp. corangensis NaN NaN CE 26 NaN
19 E2 E2 Endangered Zieria smithii https://id.biodiversity.org.au/taxon/apni/5144... Andrews species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria Sandfly Zieria Plantae Flora Rutaceae 5847 Zieria smithii NaN Low growing form of Z. smithii, Diggers Head NaN 2 NaN
20 E1 E1 Endangered Litoria watsoni https://biodiversity.org.au/afd/taxa/95cf54aa-... Mahony, Moses, Mahony, Lemckert & Donnellan, 2020 species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Watson's Tree Frog Animalia Amphibia Hylidae T1122 Litoria watsoni NaN Watson's Tree Frog E 192 NaN
21 V,P V Vulnerable Thalassarche melanophris https://biodiversity.org.au/afd/taxa/f2daa035-... (Temminck, 1828) species Animalia Chordata Aves Procellariiformes Diomedeidae Thalassarche Black-browed Albatross Animalia Aves Diomedeidae 0088 Thalassarche melanophris NaN Black-browed Albatross V 399 NaN
22 V,P V Vulnerable Circus assimilis https://biodiversity.org.au/afd/taxa/694a8fde-... Jardine & Selby, 1828 species Animalia Chordata Aves Accipitriformes Accipitridae Circus Spotted Harrier Animalia Aves Accipitridae 0218 Circus assimilis NaN Spotted Harrier NaN 1170 NaN
23 V,P V Vulnerable Parvipsitta pusilla https://biodiversity.org.au/afd/taxa/758cd11a-... (Shaw, 1790) species Animalia Chordata Aves Psittaciformes Psittacidae Parvipsitta Little Lorikeet Animalia Aves Psittacidae 0260 Parvipsitta pusilla NaN Little Lorikeet NaN 5873 NaN
24 V,P V Vulnerable Myotis macropus https://biodiversity.org.au/afd/taxa/ff911741-... (Gould, 1855) species Animalia Chordata Mammalia Chiroptera Vespertilionidae Myotis Southern Myotis Animalia Mammalia Vespertilionidae 1357 Myotis macropus NaN Southern Myotis NaN 5756 NaN
25 E1 E1 Endangered Triplarina nowraensis https://id.biodiversity.org.au/node/apni/2916958 A.R.Bean species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Triplarina Nowra Heath Myrtle Plantae Flora Myrtaceae 9618 Triplarina nowraensis NaN Nowra Heath Myrtle E 567 NaN
26 E4A E4A Critically Endangered Rhodamnia rubescens https://id.biodiversity.org.au/taxon/apni/5178... (Benth.) Miq. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Rhodamnia Scrub Turpentine Plantae Flora Myrtaceae 4283 Rhodamnia rubescens NaN Scrub Turpentine CE 10566 NaN
27 V,P V Vulnerable Miniopterus australis https://biodiversity.org.au/afd/taxa/1da10dca-... (Tomes, 1858) species Animalia Chordata Mammalia Chiroptera Miniopteridae Miniopterus Little Bentwing-bat Animalia Mammalia Miniopteridae 1346 Miniopterus australis NaN Little Bent-winged Bat NaN 6923 NaN
28 V,P V Vulnerable Chelonia mydas https://biodiversity.org.au/afd/taxa/2d605472-... (Linnaeus, 1758) species Animalia Chordata Reptilia Testudines Cheloniidae Chelonia Green Turtle Animalia Reptilia Cheloniidae 2007 Chelonia mydas NaN Green Turtle V 1440 NaN
29 V,P V Vulnerable Arctocephalus forsteri https://biodiversity.org.au/afd/taxa/598c4bf0-... (Lesson, 1828) species Animalia Chordata Mammalia Carnivora Otariidae Arctocephalus Long-nosed Fur Seal Animalia Mammalia Otariidae 1543 Arctocephalus forsteri NaN New Zealand Fur-seal NaN 344 NaN
30 V,P V Vulnerable Saccolaimus flaviventris https://biodiversity.org.au/afd/taxa/a2a1bdc0-... (Peters, 1867) species Animalia Chordata Mammalia Chiroptera Emballonuridae Saccolaimus Yellow-bellied Sheathtail-bat Animalia Mammalia Emballonuridae 1321 Saccolaimus flaviventris NaN Yellow-bellied Sheathtail-bat NaN 3705 NaN
31 E1,P E1 Endangered Thalassarche cauta https://biodiversity.org.au/afd/taxa/b0592117-... (Gould, 1841) species Animalia Chordata Aves Procellariiformes Diomedeidae Thalassarche Shy Albatross Animalia Aves Diomedeidae 0091 Thalassarche cauta NaN Shy Albatross E 184 NaN
32 E2,P E2 Endangered Eudyptula minor https://biodiversity.org.au/afd/taxa/e0c68347-... (J.R. Forster, 1781) species Animalia Chordata Aves Sphenisciformes Spheniscidae Eudyptula Little Penguin Animalia Aves Spheniscidae 0005 Eudyptula minor NaN Little Penguin in the Manly Point Area (being ... NaN 79 NaN
33 E2 E2 Endangered Prostanthera saxicola https://id.biodiversity.org.au/node/apni/2893137 R.Br. species Plantae Charophyta Equisetopsida Lamiales Lamiaceae Prostanthera NaN Plantae Flora Lamiaceae 3429 Prostanthera saxicola NaN Prostanthera saxicola population in Sutherland... NaN 6 NaN
34 E1 E1 Endangered Pultenaea baeuerlenii https://id.biodiversity.org.au/node/apni/2897476 F.Muell. species Plantae Charophyta Equisetopsida Fabales Fabaceae Pultenaea Budawangs Bush-pea Plantae Flora Fabaceae (Faboideae) 2975 Pultenaea baeuerlenii NaN Budawangs Bush-pea E 21 NaN
35 V V Vulnerable Zieria murphyi https://id.biodiversity.org.au/node/apni/2914587 Blakely species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria Velvet Zieria Plantae Flora Rutaceae 5843 Zieria murphyi NaN Velvet Zieria V 53 NaN
36 E2 E2 Endangered Pultenaea villifera https://id.biodiversity.org.au/node/apni/2917666 Sieber ex DC. species Plantae Charophyta Equisetopsida Fabales Fabaceae Pultenaea NaN Plantae Flora Fabaceae (Faboideae) 3022 Pultenaea villifera NaN Pultenaea villifera Sieber ex DC. population i... NaN 575 NaN
37 E2,V,P E2,V E2,V Petaurus norfolcensis https://biodiversity.org.au/afd/taxa/2c8ae25f-... (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider Animalia Mammalia Petauridae 1137 Petaurus norfolcensis NaN Squirrel Glider in the Wagga Wagga Local Gover... NaN 590 NaN
38 V,P V Vulnerable Petaurus norfolcensis https://biodiversity.org.au/afd/taxa/2c8ae25f-... (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider Animalia Mammalia Petauridae 1137 Petaurus norfolcensis NaN Squirrel Glider NaN 6295 NaN
39 E2,V,P E2,V E2,V Petaurus norfolcensis https://biodiversity.org.au/afd/taxa/2c8ae25f-... (Kerr, 1792) species Animalia Chordata Mammalia Diprotodontia Petauridae Petaurus Squirrel Glider Animalia Mammalia Petauridae 1137 Petaurus norfolcensis NaN Squirrel Glider on Barrenjoey Peninsula, north... NaN 1 NaN
40 E1,P E1 Endangered Mastacomys fuscus mordicus https://biodiversity.org.au/afd/taxa/44e919a7-... Thomas, 1922 subspecies Animalia Chordata Mammalia Rodentia Muridae Mastacomys Broad-toothed Rat Animalia Mammalia Muridae 1848 Mastacomys fuscus mordicus NaN Broad-toothed Rat E 1168 NaN
41 E1,P E1 Endangered Litoria aurea https://biodiversity.org.au/afd/taxa/51a873f5-... (Lesson, 1829) species Animalia Chordata Amphibia Anura Pelodryadidae Litoria Green And Gold Bell Frog Animalia Amphibia Hylidae 3166 Litoria aurea NaN Green and Golden Bell Frog V 34174 NaN
42 V,P V Vulnerable Varanus rosenbergi https://biodiversity.org.au/afd/taxa/69db15c5-... Mertens, 1957 species Animalia Chordata Reptilia Squamata Varanidae Varanus Heath Monitor Animalia Reptilia Varanidae 2287 Varanus rosenbergi NaN Rosenberg's Goanna NaN 584 NaN
43 V,P V Vulnerable Falsistrellus tasmaniensis https://biodiversity.org.au/afd/taxa/7357a9df-... (Gould, 1858) species Animalia Chordata Mammalia Chiroptera Vespertilionidae Falsistrellus Eastern False Pipistrelle Animalia Mammalia Vespertilionidae 1372 Falsistrellus tasmaniensis NaN Eastern False Pipistrelle NaN 3551 NaN
44 E1 E1 Endangered Petalura gigantea https://biodiversity.org.au/afd/taxa/76823089-... Leach, 1815 species Animalia Arthropoda Insecta Odonata Petaluridae Petalura South-eastern Petaltail Animalia Insecta Petaluridae I007 Petalura gigantea NaN Giant Dragonfly NaN 1043 NaN
45 V,P V Vulnerable Micronomus norfolkensis https://biodiversity.org.au/afd/taxa/b9b34bcf-... (J.E. Gray, 1839) species Animalia Chordata Mammalia Chiroptera Molossidae Micronomus Eastern Freetail-bat Animalia Mammalia Molossidae 1329 Micronomus norfolkensis NaN Eastern Coastal Free-tailed Bat NaN 3018 NaN
46 V,P V Vulnerable Heleioporus australiacus https://biodiversity.org.au/afd/taxa/d497c571-... (Shaw & Nodder, 1795) species Animalia Chordata Amphibia Anura Limnodynastidae Heleioporus Giant Burrowing Frog Animalia Amphibia Limnodynastidae 3042 Heleioporus australiacus NaN Giant Burrowing Frog V 1058 NaN
47 V,P V Vulnerable Ixobrychus flavicollis https://biodiversity.org.au/afd/taxa/ecb2030b-... (Latham, 1790) species Animalia Chordata Aves Ciconiiformes Ardeidae Ixobrychus Black Bittern Animalia Aves Ardeidae 0196 Ixobrychus flavicollis NaN Black Bittern NaN 437 NaN
48 E1 E1 Endangered Zieria involucrata https://id.biodiversity.org.au/node/apni/2888006 R.Br. ex Benth. species Plantae Charophyta Equisetopsida Sapindales Rutaceae Zieria NaN Plantae Flora Rutaceae 5840 Zieria involucrata NaN NaN V 2136 NaN
49 V V Vulnerable Melaleuca biconvexa https://id.biodiversity.org.au/node/apni/2896108 Byrnes species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Melaleuca Biconvex Paperbark Plantae Flora Myrtaceae 6809 Melaleuca biconvexa NaN Biconvex Paperbark V 5903 NaN
50 V V Vulnerable Eucalyptus sturgissiana https://id.biodiversity.org.au/node/apni/2900460 L.A.S.Johnson & Blaxell species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Eucalyptus Ettrema Mallee Plantae Flora Myrtaceae 4190 Eucalyptus sturgissiana NaN Ettrema Mallee NaN 303 NaN
51 V V Vulnerable Epacris gnidioides https://id.biodiversity.org.au/taxon/apni/5128... (Summerh.) E.A.Br. species Plantae Charophyta Equisetopsida Ericales Ericaceae Epacris Budawangs Cliff-heath Plantae Flora Ericaceae 15212 Epacris gnidioides NaN Budawangs Cliff-heath V 65 NaN
52 V V Vulnerable Syzygium paniculatum https://id.biodiversity.org.au/taxon/apni/5144... Gaertn. species Plantae Charophyta Equisetopsida Myrtales Myrtaceae Syzygium Magenta Lilly Pilly Plantae Flora Myrtaceae 4293 Syzygium paniculatum NaN Magenta Lilly Pilly V 1146 NaN
Whichever method you’ve followed, you will end up with very similar datasets containing threatened species and their statuses, though the number of matched species might differ7.
Code
import itables
from IPython.display import HTML, display
html = itables.to_html_datatable(threatened_status)
HTML(html)| Loading ITables v2.7.0 from the internet... (need help?) |
Code
import itables
from IPython.display import HTML, display
html = itables.to_html_datatable(threatened_clean)
HTML(html)| Loading ITables v2.7.0 from the internet... (need help?) |
To finish, we can save our dataframe as a csv file.
# save
pd.to_csv(threatened_status,
'path/to/file-name.csv')Visualise species conservation status
Along with a species list, we can also summarise threatened_status visually. Few options are as simple and easy-to-understand than a bar plot. Here we’ve made a simple bar plot displaying the number of species by conservation status, and styled it with a custom font and some nicer colours.
For nicer formatting, we can use the Roboto font from Google Fonts by downloading the font from Google Fonts, saving the folder in your current directory, unzipping the folder, and loading it with the matplotlib library.
Code
# import packages for font management
import matplotlib.font_manager as fm
import os
# add Roboto custom font
project_dir = os.getcwd()
font_path = os.path.join(project_dir, "Roboto-VariableFont_wdth,wght.ttf")
prop = fm.FontProperties(fname=font_path)
# bar plot
bar_status = (
ggplot(threatened_status) #
+ geom_bar(aes(x='status',fill='status')) # added colour
+ labs(title = "Threatened species status in Shoalhaven, NSW (2024)",
x = "Conservation status",
y = "Number of species")
+ scale_fill_manual(values = ['#ab423f', '#cd826d', '#ebc09e'],
labels = ["Vulnerable", "Endangered", "Critically Endangered"])
+ theme_classic() # theme_minimal
+ theme(
legend_position = "none",
plot_title = element_text(fontproperties=prop, size = 140),
axis_title_x = element_text(fontproperties=prop, size = 10, vjust = -0.1),
axis_title_y = element_text(angle = 90, fontproperties=prop, size = 10, hjust = -.1),
axis_text_x = element_text(fontproperties=prop, size = 8, vjust = -0.1),
axis_text_y = element_text(fontproperties=prop, size = 8),
plot_background = element_rect(fill = "#ffffff")
)
)
bar_status.show()A useful but more exciting way to see a taxonomic breakdown of species is using a waffle chart. Waffle charts are great because they display number and proportion all at once. For more advanced Python users, waffle charts can be a useful summary tool. Unfortunately, waffle charts aren’t available yet in {plotnine}, so we will be using {matplotlib}.
Code
import matplotlib.pyplot as plt
from pywaffle import Waffle
import matplotlib as mpl
from matplotlib import font_manager
from matplotlib import rcParams
# condense all taxa in one column
threatened_status['taxa_for_waffle'] = threatened_status.apply(
lambda row:
row['Kingdom'] if (row['Kingdom'] == 'Plantae')
else (row['Class'] if row['Class'] in ['Aves','Reptilia','Mammalia'] else 'Other'),
axis=1
).replace({'Aves': 'Birds', 'Reptilia': 'Reptiles', 'Mammalia': 'Mammals','Plantae': 'Plants'})
# import Roboto font into matplotlib
font_files = font_manager.findSystemFonts(fontpaths="Roboto/")
for ff in font_files:
font_manager.fontManager.addfont(ff)
rcParams['font.family'] = 'Roboto'
# set up the plot
fig,ax = plt.subplots(figsize=(10,6))
status_counts = list(threatened_status['taxa_for_waffle'].value_counts())
# make waffle chart
Waffle.make_waffle(
ax=ax,
rows=8,
values=status_counts,
colors = ['#567c7c', '#687354', '#C3CB80', '#c4ac79', '#38493a'],
interval_ratio_x = 0.1,
interval_ratio_y = 0.1,
legend={
'labels': ['Birds', 'Mammals', 'Plants', 'Reptiles', 'Other'],
'loc': 'lower center',
'bbox_to_anchor': (0.5,-.1),
'ncol': 5,
'framealpha': 0,
'fontsize': 14
}
)
# make plot prettier
plt.suptitle('Taxonomic breakdown of threatened species in Shoalhaven, NSW (2024)',fontsize=20,font='Roboto')
fig.text(0.75,0.02,"*1 square = 1 species",fontsize=16)
plt.show()Final thoughts
We hope this post has helped you understand how to download a species list for a specific area and compare it to conservation lists. It’s also possible to compare species with other information like lists of migratory species or seasonal species.
For other posts, check out our beginner’s guide to map species observations or see an investigation of dingo observations in the ALA.
Expand for session info
-----
IPython 9.10.0
galah 0.13.0
geopandas 1.1.2
itables 2.7.0
janitor 0.32.20
matplotlib 3.10.8
natsort 8.4.0
pandas 3.0.1
plotnine 0.15.3
pywaffle NA
session_info v1.0.1
shapely 2.1.2
-----
Python 3.14.3 (tags/v3.14.3:323c59a, Feb 3 2026, 16:04:56) [MSC v.1944 64 bit (AMD64)]
Windows-11-10.0.26100-SP0
-----
Session information updated at 2026-03-05 14:02
Footnotes
Each spatial layer has a two letter code, along with a number to identify it. The abbreviations are as follows:
*cl= contextual layer (i.e. boundaries of LGAs, Indigenous Protected Areas, States/Territories etc.)
*11170= number associated with the spatial layer in the atlas↩︎We used
right_join()this time because we wanted to first select columns fromnsw_threatened, then join so that we keep all 90+ rows inthreatened(usingleft_join()would keep all 1,000+ rows innsw_threatenedinstead).↩︎Check out this post for a better explanation of what CRS is and how it affects maps.↩︎
Simplifying a shapefile removes the number of total points that draw the shape outline.↩︎
On a related note, it’s possible to download a list specifically for Shoalhaven on the BioNet Atlas website. However, results from BioNet will be matched BioNet records only. As a result, fewer species will be identifed compared to the ALA, which matches NSW BioNet data as well as data from other sources.↩︎
We can double check status information by viewing the species list in Excel and clicking on links in the
infocolumn. This is handy for double checking species status codes or learning more about each species and status.↩︎This is due to differences in taxonomic names in the externally downloaded list and in ALA data. More info can be found under the “Names Matching” tab in the Shapefile + list section.↩︎