Parquet¶
Lire et écrire un fichier Parquet sans pandas peut se faire avec la bibliothèque pyarrow, qui fournit des outils pour manipuler directement des tables de données. Ce format est binaire, compressé et typé, ce qui le rend plus performant que le CSV pour le stockage et l’analyse de données.
Exemple de lecture¶
import pyarrow.parquet as pq
table = pq.read_table('exemple.parquet')
print(table.to_pydict())Exemple d’écriture¶
import pyarrow as pa
import pyarrow.parquet as pq
# Création d'une table
data = {
'Nom': ['Alice', 'Bob'],
'Âge': [30, 25]
}
table = pa.table(data)
# Écriture dans un fichier Parquet
pq.write_table(table, 'exemple.parquet')Exercice¶
Solution to Exercise 1 #
import pyarrow as pa
import pyarrow.parquet as pq
# 1. Lecture du fichier Parquet
table = pq.read_table('users.parquet')
data = table.to_pydict()
# 2. Affichage des utilisateurs
print("Utilisateurs existants :")
for i in range(len(data['id'])):
print({key: data[key][i] for key in data})
# 3. Ajout d'un nouvel utilisateur
data['id'].append(4)
data['name'].append('David')
data['email'].append('david@example.com')
# 4. Bonus : tri par nom
sorted_indices = sorted(range(len(data['name'])), key=lambda i: data['name'][i])
data = {key: [data[key][i] for i in sorted_indices] for key in data}
# 5. Sauvegarde dans le fichier Parquet
new_table = pa.table(data)
pq.write_table(new_table, 'users.parquet')
print("\nNouvel utilisateur ajouté et fichier mis à jour.")