Les dictionnaires sont des tableaux associatifs dans lesquels chaque clés est reliée à une valeur.
Un dictionnaire se crée avec des accolades.
dico = {} # Création d'une dictionnaire vide
dico = {'clé1' : 'valeur1', 'clé2' : 'valeur1', 'clé3' : 'valeur3'} # Création d'une dictionnaire avec 3 valeurs
Pour ajouter une valeur dans un dictionnaire, il faut indiquer une clé entre crochets.
mon_dico[clé] = valeur # Ajout de valeur à la "position" clé
Si on ajoute une valeur à une clé existante, cela remplacera l'ancienne valeur par la nouvelle.
À savoir : si on boucle sur un dictionnaire, Python nous renverra les clés :
for element in dico:
print(element) # Affiche clé1 puis clé2 puis clé3
Les dictionnaires sont des tableaux associatifs dans lesquels chaque clés est reliée à une valeur.
Un dictionnaire se crée avec des accolades.
dico = {} # Création d'une dictionnaire vide
dico = {'clé1' : 'valeur1', 'clé2' : 'valeur1', 'clé3' : 'valeur3'} # Création d'une dictionnaire avec 3 valeurs
Pour ajouter une valeur dans un dictionnaire, il faut indiquer une clé entre crochets.
mon_dico[clé] = valeur # Ajout de valeur à la "position" clé
Si on ajoute une valeur à une clé existante, cela remplacera l'ancienne valeur par la nouvelle.
À savoir : si on boucle sur un dictionnaire, Python nous renverra les clés :
for element in dico:
print(element) # Affiche clé1 puis clé2 puis clé3
IMPORTATION DE DONNÉES
Il y a deux façons d'importer un fichier de données : la fonction open ou les fonctions read (de la bibliothèque pandas). Leur utilisation dépend de la structure du fichier de données et de ce que vous voulez faire avec les données.
Je pense que la fonction open est à privilégier si votre fichier n'est pas structuré en observations (lignes) et variables (colonnes) ou que vous voulez faire une manipulation de données particulière comme par exemple comparer chaque ligne avec sa suivante.
Les fonctions read_csv et read_excel de pandas sont à privilégier pour les tableaux de données structurées pour l'analyse de données.
Voyons pour commencer la fonction open. Tout d'abords, je vous conseille d'indiquer le mot clé with devant le mot clé open afin de ne pas avoir à fermer le fichier une fois les actions faites.
Voici les trois principales modes d'ouvertures de fichier avec la fonction open :
- Lecture ('r') : mode par défaut, seul la lecture du fichier est autorisée, on ne peut donc pas le modifier.
- Ajout ('a') : seul l'ajout de lignes est autorisé (en fin de fichier), on ne peut donc pas modifier les données existantes. Crée le fichier s'il n'existe pas.
- Écriture ('w') : l'ajout et la modification sont autorisés. Crée le fichier s'il n'existe pas.
Exemple de lecture d'un fichier avec la fonction open :
with open('fichier.csv', 'r') as fichier: # Ouvre le fichier nommé fichier.csv en mode lecture
for ligne in fichier: # Lecture de chaque ligne du fichier
vecteur_ligne = ligne.strip().split(',') # Création d'une liste contenant les valeurs de la lignes.
Pour un fichier à n colonnes, la variable vecteur_ligne contiendra n éléments (un pour chaque colonne).
La fonction strip permet d'enlever les sauts de lignes (\n) afin de 'nettoyer' les données. La fonction split permet de séparer chaque donnée de la ligne selon un délimiteur (ici la virgule) et de la stocker dans une liste.
Exemple d'écriture dans un fichier avec la fonction open :
with open('fichier.csv', 'w') as fichier: # Ouvre le fichier nommé fichier.csv en mode écriture
fichier.write('Ce chaîne est écrite dans le fichier')
Voyons maintenant les fonctions read_csv et read_excel de pandas que je conseille car elles sont plus faciles d'utilisation que la fonction open. De plus, elle convient beaucoup mieux pour l’analyse de fichier de données structurées en lignes/colonnes.
Pour installer la bibliothèque pandas, vous pouvez exécuter la commande suivante dans votre terminale :
pip install pandas
Il faut ensuite l'importer dans votre fichier avec un import :
import pandas
Puis on peut enfin utiliser les fonctions :
data = panda.read_csv('chemin vers le fichier.csv', index_col=0) # index_col=0 si la première ligne du fichier correspond aux noms des colonnes (1 sinon)
data = panda.read_excel('chemin vers le fichier.xlsx', index_col=0)
Les deux fonctions read renvoient des tableaux de type dataframe.
Pour accéder à une colonne en particulier, on indique au dataframe le nom de la colonne entre crochets.
data['nom première colonne'] # Renvoie à la première colonne du dataframe data
data[['colonne1','colonne2','colonne5']] # Renvoie 3 colonnes du dataframe data
On accède ensuite aux éléments de la colonne de la manière qu'avec une liste classique.
data['nom première colonne'][:10] # Renvoie les 10 premiers éléments de la première colonne
Pour d'autres informations sur la manipulation et l'analyse de données sur Python, je vous invite à lire ma fiche nommée "Manipulation et l'analyse de données".