ETL et ELT en Python
Jake Roach
Data Engineer
import pandas as pd
# Lire le fichier CSV dans un DataFrame
data_frame = pd.read_csv("raw_data.csv")
# Afficher les premières lignes
data_frame.head()
name num_firms total_income
0 Advertising 58 3892.41
1 Apparel 39 5422.69
...
49 Trucking 35 17324.36
read_csv()
delimiter, header, engine$$
.head()
n premières lignes d'un DataFrame name num_firms total_income
0 Advertising 58 3892.41
1 Apparel 39 5422.69
...
49 Trucking 35 17324.36
name num_firms
1 Apparel 39
37 Apparel 61
# D'abord, par lignes
data_frame.loc[data_frame["name"] == "Apparel", :]
# Puis, par colonnes
data_frame.loc[:, ["name", "num_firms"]]
.loc
: signifie « tout »# Écrire un DataFrame dans un fichier .csv
data_frame.to_csv("cleaned_data.csv")
.to_csv()
path, crée un DataFrame à partir du fichier à ce path$$
Autres options, comme :
.to_json(), .to_excel(), .to_sql()
data_warehouse.execute( # Utilisez des clients Python ou d'autres outils pour exécuter des requêtes SQL
"""
CREATE TABLE total_sales AS
SELECT
ds,
SUM(sales)
FROM raw_sales_data
GROUP BY ds;
"""
)
.execute() pour exécuter des requêtes SQL# Définir les fonctions extract(), transform(), et load()
...
def transform(data_frame, value):
return data_frame.loc[data_frame["name"] == value, ["name", "num_firms"]]
# D'abord, extraire les données d'un .csv
extracted_data = extract(file_name="raw_data.csv")
# Puis, transformer `extracted_data`
transformed_data = transform(data_frame=extracted_data, value="Apparel")
# Enfin, charger `transformed_data`
load(data_frame=transformed_data, file_name="cleaned_data.csv")
ETL et ELT en Python