Page MenuHomec4science

01_oacct_countries.py
No OneTemporary

File Metadata

Created
Wed, Jun 26, 03:11

01_oacct_countries.py

#!/usr/bin/env python
# coding: utf-8
# # Projet Open Access Compliance Check Tool (OACCT)
#
# Projet P5 de la bibliothèque de l'EPFL en collaboration avec les bibliothèques des Universités de Genève, Lausanne et Berne : https://www.swissuniversities.ch/themen/digitalisierung/p-5-wissenschaftliche-information/projekte/swiss-mooc-service-1-1-1-1
#
# Ce notebook permet d'extraire les données choisis parmis les sources obtenues par API et les traiter pour les rendre exploitables dans l'application OACCT.
#
# Auteur : **Pablo Iriarte**, Université de Genève (pablo.iriarte@unige.ch)
# Date de dernière mise à jour : 16.07.2021
# In[1]:
import pandas as pd
import csv
import json
import numpy as np
# ## Table Countries
# In[2]:
# La table a été corrigée pour ajouter la valeur manquante à la fin :
# International Agency International Agency OI INT 999
country = pd.read_csv('iso_3166.txt', encoding='utf-8', header=0, sep='\t', na_filter=False)
country
# In[3]:
country.loc[country['Alpha-2 code'].isnull()]
# In[4]:
# convertir l'index en id
country = country.reset_index()
country
# In[5]:
country['id'] = country['index'] + 1
del country['index']
del country['French short name']
del country['Alpha-3 code']
del country['Numeric']
country
# In[6]:
# renommer les colonnes
country = country.rename(columns={'Alpha-2 code' : 'iso_code', 'English short name' : 'name'})
# In[7]:
# ajout de la valeur UNKNOWN
country = country.append({'id' : 999999, 'iso_code' : '__', 'name' : 'UNKNOWN'}, ignore_index=True)
# In[8]:
country
# In[9]:
# esport JSON
result = country.to_json(orient='records', force_ascii=False)
parsed = json.loads(result)
with open('sample/country.json', 'w', encoding='utf-8') as file:
json.dump(parsed, file, indent=2, ensure_ascii=False)
# In[10]:
# export csv
country.to_csv('sample/country.tsv', sep='\t', encoding='utf-8', index=False)
# In[11]:
# export csv
country.to_csv('country.tsv', sep='\t', encoding='utf-8', index=False)
# In[12]:
# export excel
country.to_excel('sample/country.xlsx', index=False)

Event Timeline