Commit d0cd5a8f authored by Isaac AFAMBO's avatar Isaac AFAMBO
Browse files

Replace convert.py

parent 419e9e55
......@@ -84,14 +84,13 @@ def main():
if not target_dir.exists():
parser.error("Target dir {!r} not found".format(str(target_dir)))
nb_expected_datasets = 0
dataset_code = 'Citymapper_Mobility_Index'
# read with explicit type and missing value handling (latest is needed for country code 'NA, Namibia')
df = pd.read_csv(str(source_dir),skiprows=3,na_filter=True,index_col='Date') ## il n'y a pas de données dans les 3 premières lignes d'où skiprows=3
df_info=pd.read_csv(str(source_dir),na_filter=False) # pour chercher les informations qui ne sont pas des données
df = pd.read_csv(str(source_dir) + '/Citymapper_Mobility_Index.csv',skiprows=3,na_filter=True,index_col='Date') ## il n'y a pas de données dans les 3 premières lignes d'où skiprows=3
df_info=pd.read_csv(str(source_dir)+ '/Citymapper_Mobility_Index.csv',na_filter=False) # pour chercher les informations qui ne sont pas des données
note_info=(df_info.iloc[0]+df_info.iloc[1])[0]
......@@ -156,7 +155,7 @@ def compute_dimension_list(df):
"""Extracts dimension dicts from dimension codes"""
def create_dimenson_dict(df_code: pd.Series ,df_label: pd.Series):
""" Cette fonction utilise de Series pour créer le dictionnaire, ce qui permet de faire abstraction de l'orientation dans le dataframe"""
""" Cette fonction utilise deux Series pour créer le dictionnaire, ce qui permet de faire abstraction de l'orientation dans le dataframe"""
if df_code.empty and df_label.empty:
raise ValueError('Please provide either a non empty list of code or non empty list of label.')
......@@ -173,18 +172,19 @@ def compute_dimension_list(df):
# City Names
"""creation of city_names_dict"""
df_code=pd.Series(dtype=object)
df_label=pd.Series(df.columns[1:])
df_label=pd.Series(df.columns)
city_names_dict = create_dimenson_dict(df_code,df_label)
return [
('city_names_code', 'City Names', city_names_dict),
('city_names', 'City Names', city_names_dict),
]
def write_json_file(file_path: Path, data):
"""Writes data the JSON way to file_path"""
......@@ -209,7 +209,7 @@ def write_series_jsonl(series_filepath: Path, df, dimension_list):
obs_list = [('PERIOD', 'VALUE')] + list(zip(period_list, value_list))
ts_data = { # creation d'un dictionnaire tel que l'on ait le code de City Names et son label et une serie de données
'code': df_transpose.loc[ts_code]['city_code'],
'dimensions': {'city_name':df_transpose.loc[ts_code]['city_code']},
'dimensions': {'city_names':df_transpose.loc[ts_code]['city_code']},
'observations': obs_list, # cette série de données comprend une liste avec la date et la valeur vouluee
}
json_str = json.dumps(ts_data, ensure_ascii=False, sort_keys=True)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment