Spaces:
Sleeping
Sleeping
File size: 1,033 Bytes
615c11f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
import sqlite3
import pandas as pd
# Suppression des doublons
def remove_duplicates(df):
df = df.drop_duplicates()
df = df.loc[:, ~df.columns.duplicated()]
return df
# 🚀 Fonction unique appelée depuis le script principal
def clean_database(db_path: str):
"""
Nettoie une base SQLite sur place : lit les données, les nettoie, puis écrase le fichier.
"""
conn = sqlite3.connect(db_path)
tables = pd.read_sql("SELECT name FROM sqlite_master WHERE type='table';", conn)
cleaned_data = {}
for table in tables['name']:
print(f"🧽 Nettoyage de la table : {table}")
df = pd.read_sql(f"SELECT * FROM {table};", conn)
df = remove_duplicates(df)
cleaned_data[table] = df
conn.close()
# On écrase le fichier d'origine avec la version nettoyée
conn = sqlite3.connect(db_path)
for table, df in cleaned_data.items():
df.to_sql(table, conn, if_exists='replace', index=False)
conn.close()
|