Source code for aftercovid.data.data_insee

# coding: utf-8
"""
Loads data from :epkg:`INSEE`.
"""
import os
from pandas import to_datetime
from .pandas_cache import read_csv_cache, geo_read_csv_cache


[docs]def data_france_departments(cache='dep_france', metropole=False): """ Retrieves data from `Contours géographiques des départements <https://www.data.gouv.fr/en/datasets/ contours-geographiques-des-departements/>`_. :param metropole: only for the metropole :param cache: cache name :return: geodataframe """ url = ("https://www.data.gouv.fr/en/datasets/r/" "ed02b655-4307-4db4-b1ca-7939145dc20f") backup = os.path.join(os.path.dirname(__file__), "data_france_dep.geojson") df = geo_read_csv_cache(cache, url, backup=backup) if 'id' in df.columns: df = df.drop('id', axis=1) if metropole: codes = [_ for _ in set(df.code_depart) if len(_) < 3] return df[df.code_depart.isin(codes)] return df
[docs]def data_covid_france_departments_hospitals( cache='covid_france_hosp', metropole=False): """ Retrieves data from `Données hospitalières relatives à l'épidémie de COVID-19 <https://www.data.gouv.fr/fr/datasets/ donnees-hospitalieres-relatives-a-lepidemie-de-covid-19/>`_. :param cache: cache name :param metropole: only for the metropole :return: dataframe """ url = ("https://www.data.gouv.fr/fr/datasets/r/" "63352e38-d353-4b54-bfd1-f1b3ee1cabd7") df = read_csv_cache(cache, url, sep=';') df['jour'] = to_datetime(df['jour']) if metropole: codes = [_ for _ in set(df.dep) if len(_) < 3] return df[df.dep.isin(codes)] return df
def data_covid_france_departments_tests( cache='covid_france_test', metropole=False): """ Retrieves data from `Données de laboratoires pour le dépistage (A COMPTER DU 18/05/2022) - SI-DEP <https://www.data.gouv.fr/fr/datasets/ donnees-de-laboratoires-pour-le-depistage-a-compter-du-18-05-2022-si-dep/>`_. :param cache: cache name :param metropole: only for the metropole :return: geodatafrale """ def trylen(v): try: return len(v) except TypeError as e: # pragma: no cover raise TypeError(f"Issue with '{v}'") from e url = ("https://www.data.gouv.fr/fr/datasets/r/" "674bddab-6d61-4e59-b0bd-0be535490db0") df = read_csv_cache(cache, url, sep=";", decimal=",") df['jour'] = to_datetime(df['jour']) df['dep'] = df.dep.astype(str) def plus0(s): if len(s) < 2: return "0" * (2 - len(s)) + s return s df['dep'] = df['dep'].apply(plus0) if metropole: codes = [_ for _ in set(df.dep) if trylen(_) < 3] return df[df.dep.isin(codes)] return df