Compare commits
2 Commits
e095efbac9
...
e5f2a11443
| Author | SHA1 | Date | |
|---|---|---|---|
| e5f2a11443 | |||
| cb8b602e4a |
45
pivot_bdc_status/README.md
Normal file
45
pivot_bdc_status/README.md
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
# Exctraction de la BDC Statut à partir d'une liste de taxon.
|
||||||
|
Le fichier source doit contenir à minima une colone contenant les `cd_nom` ou `cd_ref` concernés par l'extraction à réaliser.
|
||||||
|
Dans le cas où il contient d'autres colonnes (date, nombre, observateur, ...), celles-ci seront jointes au sein des feuillets `pivot_table` et `pivot_libel` ; cf.ci-dessous.
|
||||||
|
|
||||||
|
|
||||||
|
L'export obtenu se compose des trois feuillets suivant :
|
||||||
|
- v_bdc_status : c'est un export qusi pure de la vue `taxonomie.v_bdc_status`.
|
||||||
|
|cd_nom|cd_ref|regne|phylum|classe|ordre|famille|group1_inpn|group2_inpn|group3_inpn|nom_vern|nom_complet|nom_valide|lb_nom|rq_statut|code_statut|cd_type_statut|label_statut|full_citation|doc_url|
|
||||||
|
|-|-|
|
||||||
|
- pivot_table : Il correspond à l'export de la vue `taxonomie.v_bdc_status` retourner pour avoir les codes status en colonnes et non en ligne en face de chaque espèce (1 ligne = 1 espèce).
|
||||||
|
Au sein de ce feuillet, il est possible qu'une espèce pour un statut, possède plusieurs codes statut. Ces codes seront alors écrit entre `[]` (C'est souvent le cas pour les listes LRN concernant les oiseaux). Dans ce cas, référez-vous au feuillet `v_bdc_status` en filtrant sur l'espèce concerné pour en savoir plus. C'est souvent lié au fait que l'espèce possède un statut différent en fonction des conditions d'observations (exemple : Hiverant, Nicheur, ...).
|
||||||
|
Les colonnes récupérées sont les suivantes :
|
||||||
|
- AL : Liste d'alerte départementale
|
||||||
|
- BARC : Convention de Barcelone
|
||||||
|
- BERN : Convention de Berne
|
||||||
|
- BONN : Convention de Bonn
|
||||||
|
- OSPAR : Convention OSPAR
|
||||||
|
- DH : Directive Habitat
|
||||||
|
- DO : Directive Oiseaux
|
||||||
|
- LRE : Liste rouge européenne
|
||||||
|
- LRM : Liste rouge mondiale
|
||||||
|
- LRN : Liste rouge nationale
|
||||||
|
- LRR_AURA : Liste rouge régionale AURA
|
||||||
|
- LRR_RA : Liste rouge régionale (ancienne région)
|
||||||
|
- PNA : Plan national en cours
|
||||||
|
- exPNA : Plan national terminé
|
||||||
|
- PAPNAT : Priorité action publique nationale
|
||||||
|
- POM : Protection COM
|
||||||
|
- PD : Protection départementale
|
||||||
|
- PN : Protection nationale
|
||||||
|
- PR : Protection régionale
|
||||||
|
- REGLII : Interdiction d'introduction
|
||||||
|
- REGLLUTTE : Lutte contre certaines espèces
|
||||||
|
- REGL : Réglementation
|
||||||
|
- REGLSO : Réglementation sans objet
|
||||||
|
- SCAP NAT : SCAP nationale
|
||||||
|
- SCAP REG : SCAP régionale
|
||||||
|
- SENSDEP : Sensibilité départementale
|
||||||
|
- SENSNAT : Sensibilité nationale
|
||||||
|
- SENSREG : Sensibilité régionale
|
||||||
|
- ZDET : ZNIEFF Déterminantes
|
||||||
|
|
||||||
|
**ATTENTION :** Il est normal de ne pas retrouver tous les statuts cités à chaque export car les types de statuts non concernées par la liste d'espèce soumises ne figureront pas dans le tableau.
|
||||||
|
- pivot_libel : Identique à `pivot_table` mais contenant les intitulés des statuts à la place des codes.
|
||||||
|
- dic_type_statut : Dictionnaire des types de status concerné par l'extraction.
|
||||||
@ -37,6 +37,12 @@ def get_status(lst,con):
|
|||||||
;""".format(cd_nom = tuple(lst))
|
;""".format(cd_nom = tuple(lst))
|
||||||
return pd.read_sql_query(sql,con)
|
return pd.read_sql_query(sql,con)
|
||||||
|
|
||||||
|
def get_type_status(con):
|
||||||
|
sql = """
|
||||||
|
SELECT * FROM taxonomie.bdc_statut_type
|
||||||
|
;"""
|
||||||
|
return pd.read_sql_query(sql,con)
|
||||||
|
|
||||||
def get_api_status(api,cd_nom:int):
|
def get_api_status(api,cd_nom:int):
|
||||||
res = requests.api.get('%s/%i'%(api,cd_nom))
|
res = requests.api.get('%s/%i'%(api,cd_nom))
|
||||||
if res.status_code == 200:
|
if res.status_code == 200:
|
||||||
@ -225,6 +231,8 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
# Récupération des statuts
|
# Récupération des statuts
|
||||||
df = get_status(taxlist[cd_col].astype(str),con_gn)
|
df = get_status(taxlist[cd_col].astype(str),con_gn)
|
||||||
|
typ = get_type_status(con_gn)
|
||||||
|
typ = typ[typ.cd_type_statut.isin(df.cd_type_statut.unique())]
|
||||||
|
|
||||||
# Distinction LRR [old vs new] région
|
# Distinction LRR [old vs new] région
|
||||||
is_lrr = df.cd_type_statut == 'LRR'
|
is_lrr = df.cd_type_statut == 'LRR'
|
||||||
@ -287,3 +295,8 @@ if __name__ == "__main__":
|
|||||||
)
|
)
|
||||||
# writer.save()
|
# writer.save()
|
||||||
print('pivot_libel OK !')
|
print('pivot_libel OK !')
|
||||||
|
typ.to_excel(
|
||||||
|
writer,sheet_name='dic_type_statut',index=False
|
||||||
|
)
|
||||||
|
# writer.save()
|
||||||
|
print('dic_type_statut OK !')
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user