SQL · Data Engineering · Préparation de données

Prétraitement et Inspection des Données avec SQL : Guide complet

Valeurs manquantes, doublons, normalisation, agrégation : maîtrisez toutes les techniques SQL pour préparer vos données avant analyse ou machine learning.

Niveau : intermédiaire | Temps de lecture : 12 min | Mis à jour : avril 2026

1. Importance du prétraitement et de l'inspection des données

Le prétraitement et l'inspection des données constituent des étapes cruciales dans l'analyse de données. Avant d'entraîner un modèle de machine learning ou de générer des visualisations, il est essentiel d'assurer la qualité des données par des méthodes de nettoyage, d'exploration et de normalisation. SQL, en tant que langage de gestion de bases de données relationnelles, permet d'effectuer efficacement ces étapes.

Pourquoi le prétraitement est-il crucial ?

Des données de mauvaise qualité = des analyses peu fiables = des décisions erronées. SQL permet d'automatiser ces tâches sur de grandes bases avec rapidité et précision.

60-80%
du temps d'un projet data consacré au prétraitement
Harvard Business Review, 2025
50x
plus rapide qu'Excel sur 1 million de lignes
Benchmark, 2026

Les étapes clés du prétraitement

  • Inspection des données : repérer les valeurs manquantes ou aberrantes
  • Nettoyage : supprimer ou ajuster les valeurs incohérentes
  • Normalisation et agrégation : transformer les données pour les rendre uniformes
  • Gestion des duplicatas : garantir que chaque observation est unique

Workflow de prétraitement des données avec SQL

Schéma des étapes de prétraitement SQL

2. Inspection des données avec SQL

L'inspection des données est la première étape du prétraitement. Elle consiste à analyser la distribution et l'intégrité des données stockées.

2.1 Afficher les premières lignes

SELECT avec LIMIT
-- Aperçu général de la table
SELECT * 
FROM ventes 
LIMIT 10;

-- Compter le nombre total de lignes
SELECT COUNT(*) AS total_lignes FROM ventes;

2.2 Identifier les valeurs manquantes

IS NULL et comptage
-- Compter les valeurs manquantes par colonne
SELECT 
    COUNT(CASE WHEN email IS NULL THEN 1 END) AS email_manquants,
    COUNT(CASE WHEN age IS NULL THEN 1 END) AS age_manquants,
    COUNT(CASE WHEN nom IS NULL THEN 1 END) AS nom_manquants
FROM clients;

-- Pourcentage de valeurs manquantes
SELECT 
    ROUND(100.0 * COUNT(CASE WHEN email IS NULL THEN 1 END) / COUNT(*), 2) AS pct_email_manquant
FROM clients;

2.3 Détection de valeurs incohérentes

Valeurs aberrantes
-- Âges impossibles
SELECT *
FROM clients
WHERE age < 0 OR age > 120;

-- Prix négatifs
SELECT *
FROM ventes
WHERE prix < 0;

-- Dates incohérentes
SELECT *
FROM commandes
WHERE date_commande > CURRENT_DATE;

2.4 Statistiques descriptives avec SQL

Statistiques de base
SELECT 
    COUNT(*) AS nb_lignes,
    COUNT(DISTINCT categorie) AS nb_categories,
    AVG(prix) AS prix_moyen,
    MIN(prix) AS prix_min,
    MAX(prix) AS prix_max,
    PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY prix) AS prix_median
FROM ventes;

3. Nettoyage des données avec SQL

Une fois l'inspection terminée, le nettoyage s'avère indispensable pour corriger les anomalies et les valeurs manquantes.

⚠️ Attention : Avant toute suppression, faites une sauvegarde ou testez dans une transaction (BEGIN; ... ROLLBACK;).

3.1 Suppression des valeurs manquantes

DELETE conditionnel
DELETE FROM clients
WHERE email IS NULL;

-- Suppression si trop de valeurs manquantes (ex: 3+ colonnes NULL)
DELETE FROM clients
WHERE (CASE WHEN email IS NULL THEN 1 ELSE 0 END +
       CASE WHEN age IS NULL THEN 1 ELSE 0 END +
       CASE WHEN nom IS NULL THEN 1 ELSE 0 END) >= 3;

3.2 Imputation des valeurs manquantes

Remplacer les NULL
-- Imputation par la moyenne
UPDATE clients
SET revenu = (SELECT AVG(revenu) FROM clients WHERE revenu IS NOT NULL)
WHERE revenu IS NULL;

-- Imputation par une valeur par défaut
UPDATE clients
SET statut = 'actif'
WHERE statut IS NULL;

-- Imputation avec COALESCE (sans modifier la table)
SELECT 
    id,
    COALESCE(email, Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.') AS email_clean
FROM clients;

3.3 Correction des valeurs incohérentes

Mise à jour conditionnelle
-- Mettre les âges aberrants à NULL
UPDATE clients
SET age = NULL
WHERE age < 0 OR age > 120;

-- Plafonner les prix trop élevés
UPDATE ventes
SET prix = 10000
WHERE prix > 10000;

-- Uniformiser la casse
UPDATE clients
SET nom = UPPER(nom),
    email = LOWER(email);

3.4 Suppression des duplicatas

Identifier et supprimer les doublons
-- Identifier les doublons
SELECT email, COUNT(*)
FROM clients
GROUP BY email
HAVING COUNT(*) > 1;

-- Supprimer les doublons (garder le plus petit ID)
DELETE FROM clients
WHERE id NOT IN (
    SELECT MIN(id)
    FROM clients
    GROUP BY email
);

-- Alternative avec CTE (PostgreSQL, SQL Server)
WITH doublons AS (
    SELECT id, 
           ROW_NUMBER() OVER (PARTITION BY email ORDER BY id) AS rn
    FROM clients
)
DELETE FROM clients
WHERE id IN (SELECT id FROM doublons WHERE rn > 1);

4. Transformation et agrégation des données

4.1 Normalisation des données (Min-Max)

Normalisation sur échelle 0-1
WITH stats AS (
    SELECT MIN(prix) AS min_prix, MAX(prix) AS max_prix
    FROM ventes
)
SELECT 
    id,
    prix,
    (prix - min_prix) / (max_prix - min_prix) AS prix_normalise
FROM ventes, stats;

4.2 Standardisation (Z-score)

Moyenne = 0, écart-type = 1
SELECT 
    id,
    prix,
    (prix - AVG(prix) OVER()) / STDDEV(prix) OVER() AS prix_standardise
FROM ventes;

4.3 Agrégation des données

GROUP BY avec fonctions d'agrégation
-- Total des ventes par région
SELECT 
    region, 
    SUM(montant) AS total_ventes,
    COUNT(*) AS nb_transactions,
    AVG(montant) AS panier_moyen
FROM ventes
GROUP BY region
ORDER BY total_ventes DESC;

-- Ventes par mois
SELECT 
    DATE_TRUNC('month', date_vente) AS mois,
    SUM(montant) AS total_mensuel,
    COUNT(*) AS nb_ventes
FROM ventes
GROUP BY DATE_TRUNC('month', date_vente)
ORDER BY mois;

4.4 Création de tables dérivées

CREATE TABLE AS
-- Table des ventes normalisées
CREATE TABLE ventes_normalisees AS
SELECT 
    id, 
    region,
    date_vente,
    (prix - AVG(prix) OVER()) / STDDEV(prix) OVER() AS prix_normalise,
    (quantite - AVG(quantite) OVER()) / STDDEV(quantite) OVER() AS qte_normalisee
FROM ventes;

-- Table des résumés par région
CREATE TABLE resume_ventes_region AS
SELECT 
    region, 
    SUM(montant) AS total_ventes,
    COUNT(*) AS nb_transactions,
    AVG(montant) AS panier_moyen
FROM ventes
GROUP BY region;

5. Inspection des données transformées

Après le prétraitement, il est recommandé d'inspecter de nouveau les données pour vérifier leur qualité.

Validation des transformations
-- Vérifier la normalisation (moyenne proche de 0, écart-type proche de 1)
SELECT 
    AVG(prix_normalise) AS moyenne,
    STDDEV(prix_normalise) AS ecart_type
FROM ventes_normalisees;

-- Vérifier qu'il n'y a plus de valeurs manquantes
SELECT 
    COUNT(*) - COUNT(prix_normalise) AS manquants
FROM ventes_normalisees;

-- Vérifier l'absence de doublons
SELECT COUNT(*) - COUNT(DISTINCT id) AS doublons
FROM ventes_normalisees;

6. Automatisation avec les vues SQL

Les vues permettent de sauvegarder des requêtes complexes pour réutilisation, sans stocker physiquement les données.

CREATE VIEW
-- Vue des clients propres
CREATE VIEW vue_clients_clean AS
SELECT *
FROM clients
WHERE email IS NOT NULL 
  AND age BETWEEN 0 AND 120
  AND nom IS NOT NULL;

-- Vue des ventes normalisées
CREATE VIEW vue_ventes_normalisees AS
SELECT 
    id,
    region,
    date_vente,
    (prix - AVG(prix) OVER()) / STDDEV(prix) OVER() AS prix_standardise
FROM ventes;

-- Utiliser la vue comme une table
SELECT * FROM vue_ventes_normalisees WHERE prix_standardise > 2;
Avantage des vues :

Les vues ne dupliquent pas les données. Elles se mettent à jour automatiquement quand les tables sources changent.

7. Bonnes pratiques de prétraitement

1. Toujours sauvegarder avant de modifier

Créez une copie de la table avant tout DELETE ou UPDATE destructeur.

2. Tester sur un échantillon

Utilisez LIMIT ou une condition pour tester vos transformations sur un petit sous-ensemble.

3. Documenter les transformations

Gardez une trace des règles de nettoyage (comment vous avez traité les NULL, doublons, etc.).

4. Utiliser des transactions

BEGIN TRANSACTION; ... COMMIT; permet d'annuler en cas d'erreur.

5. Préférer les vues aux modifications directes

Les vues préservent les données brutes et permettent une traçabilité parfaite.

Checklist avant de commencer :
  • ✅ Avez-vous une sauvegarde ?
  • ✅ Avez-vous identifié toutes les colonnes à nettoyer ?
  • ✅ Avez-vous défini les règles de transformation ?
  • ✅ Avez-vous testé sur un échantillon ?

8. FAQ — Prétraitement SQL

Comment gérer les valeurs manquantes dans une colonne numérique ?

Plusieurs stratégies : (1) suppression des lignes si peu nombreuses, (2) imputation par la moyenne (distribution symétrique), (3) imputation par la médiane (distribution asymétrique), (4) imputation par 0 ou une valeur par défaut, (5) prédiction par régression (avancé). Le choix dépend du contexte métier.

Comment détecter des doublons sur plusieurs colonnes ?

SELECT colonne1, colonne2, COUNT(*) FROM table GROUP BY colonne1, colonne2 HAVING COUNT(*) > 1; Cette requête identifie les combinaisons dupliquées.

Quelle est la différence entre DELETE et TRUNCATE ?

DELETE supprime des lignes une par une (plus lent, peut être annulé avec ROLLBACK, peut avoir une clause WHERE). TRUNCATE supprime toutes les lignes en une fois (très rapide, ne peut pas être annulé sans sauvegarde).

Comment normaliser des données entre 0 et 1 en SQL ?

SELECT (colonne - min_col) / (max_col - min_col) AS normalise FROM table; Il faut calculer le min et le max au préalable, via une sous-requête ou une CTE.

Les vues ralentissent-elles les requêtes ?

Les vues simples non matérialisées sont réécrites par le SGBD dans la requête principale. Elles n'ajoutent pas de surcoût significatif. Les vues matérialisées (PostgreSQL) stockent physiquement les données et peuvent accélérer les requêtes, mais nécessitent un refresh.

Comment traiter les valeurs aberrantes (outliers) ?

Méthode de l'IQR (intervalle interquartile) : WHERE valeur NOT BETWEEN Q1 - 1.5*IQR AND Q3 + 1.5*IQR. Ou méthode Z-score : WHERE ABS(valeur - moyenne) / ecart_type > 3. Décidez ensuite de supprimer, plafonner ou conserver selon le contexte.

Conclusion

Le prétraitement et l'inspection des données avec SQL sont des étapes essentielles pour garantir la qualité des données avant leur utilisation en analyse ou en modélisation. SQL propose une panoplie d'outils pour détecter, nettoyer et transformer les données, rendant le processus plus efficace.

À retenir

  • Inspection : LIMIT, COUNT, IS NULL, statistiques descriptives
  • Nettoyage : suppression des NULL, imputation, correction des incohérences, dédoublonnage
  • Transformation : normalisation (Min-Max), standardisation (Z-score), agrégation
  • Automatisation : vues SQL pour réutiliser les données propres
  • Bonnes pratiques : sauvegardes, transactions, tests sur échantillons
Pour aller plus loin : Découvrez notre guide pratique sur le nettoyage de données avec SQL pour des techniques avancées.
Faites parler vos données
Apprenez les méthodes et les outils pour extraire de la valeur stratégique : Data Science : Le guide complet des méthodes et outils.
SQL · Data Engineering · Préparation de données

Prétraitement et Inspection des Données avec SQL : Guide complet

Valeurs manquantes, doublons, normalisation, agrégation : maîtrisez toutes les techniques SQL pour préparer vos données avant analyse ou machine learning.

Niveau : intermédiaire | Temps de lecture : 12 min | Mis à jour : avril 2026

1. Importance du prétraitement et de l'inspection des données

Le prétraitement et l'inspection des données constituent des étapes cruciales dans l'analyse de données. Avant d'entraîner un modèle de machine learning ou de générer des visualisations, il est essentiel d'assurer la qualité des données par des méthodes de nettoyage, d'exploration et de normalisation. SQL, en tant que langage de gestion de bases de données relationnelles, permet d'effectuer efficacement ces étapes.

Pourquoi le prétraitement est-il crucial ?

Des données de mauvaise qualité = des analyses peu fiables = des décisions erronées. SQL permet d'automatiser ces tâches sur de grandes bases avec rapidité et précision.

60-80%
du temps d'un projet data consacré au prétraitement
Harvard Business Review, 2025
50x
plus rapide qu'Excel sur 1 million de lignes
Benchmark, 2026

Les étapes clés du prétraitement

  • Inspection des données : repérer les valeurs manquantes ou aberrantes
  • Nettoyage : supprimer ou ajuster les valeurs incohérentes
  • Normalisation et agrégation : transformer les données pour les rendre uniformes
  • Gestion des duplicatas : garantir que chaque observation est unique

Workflow de prétraitement des données avec SQL

Schéma des étapes de prétraitement SQL

2. Inspection des données avec SQL

L'inspection des données est la première étape du prétraitement. Elle consiste à analyser la distribution et l'intégrité des données stockées.

2.1 Afficher les premières lignes

SELECT avec LIMIT
-- Aperçu général de la table
SELECT * 
FROM ventes 
LIMIT 10;

-- Compter le nombre total de lignes
SELECT COUNT(*) AS total_lignes FROM ventes;

2.2 Identifier les valeurs manquantes

IS NULL et comptage
-- Compter les valeurs manquantes par colonne
SELECT 
    COUNT(CASE WHEN email IS NULL THEN 1 END) AS email_manquants,
    COUNT(CASE WHEN age IS NULL THEN 1 END) AS age_manquants,
    COUNT(CASE WHEN nom IS NULL THEN 1 END) AS nom_manquants
FROM clients;

-- Pourcentage de valeurs manquantes
SELECT 
    ROUND(100.0 * COUNT(CASE WHEN email IS NULL THEN 1 END) / COUNT(*), 2) AS pct_email_manquant
FROM clients;

2.3 Détection de valeurs incohérentes

Valeurs aberrantes
-- Âges impossibles
SELECT *
FROM clients
WHERE age < 0 OR age > 120;

-- Prix négatifs
SELECT *
FROM ventes
WHERE prix < 0;

-- Dates incohérentes
SELECT *
FROM commandes
WHERE date_commande > CURRENT_DATE;

2.4 Statistiques descriptives avec SQL

Statistiques de base
SELECT 
    COUNT(*) AS nb_lignes,
    COUNT(DISTINCT categorie) AS nb_categories,
    AVG(prix) AS prix_moyen,
    MIN(prix) AS prix_min,
    MAX(prix) AS prix_max,
    PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY prix) AS prix_median
FROM ventes;

3. Nettoyage des données avec SQL

Une fois l'inspection terminée, le nettoyage s'avère indispensable pour corriger les anomalies et les valeurs manquantes.

⚠️ Attention : Avant toute suppression, faites une sauvegarde ou testez dans une transaction (BEGIN; ... ROLLBACK;).

3.1 Suppression des valeurs manquantes

DELETE conditionnel
DELETE FROM clients
WHERE email IS NULL;

-- Suppression si trop de valeurs manquantes (ex: 3+ colonnes NULL)
DELETE FROM clients
WHERE (CASE WHEN email IS NULL THEN 1 ELSE 0 END +
       CASE WHEN age IS NULL THEN 1 ELSE 0 END +
       CASE WHEN nom IS NULL THEN 1 ELSE 0 END) >= 3;

3.2 Imputation des valeurs manquantes

Remplacer les NULL
-- Imputation par la moyenne
UPDATE clients
SET revenu = (SELECT AVG(revenu) FROM clients WHERE revenu IS NOT NULL)
WHERE revenu IS NULL;

-- Imputation par une valeur par défaut
UPDATE clients
SET statut = 'actif'
WHERE statut IS NULL;

-- Imputation avec COALESCE (sans modifier la table)
SELECT 
    id,
    COALESCE(email, Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.') AS email_clean
FROM clients;

3.3 Correction des valeurs incohérentes

Mise à jour conditionnelle
-- Mettre les âges aberrants à NULL
UPDATE clients
SET age = NULL
WHERE age < 0 OR age > 120;

-- Plafonner les prix trop élevés
UPDATE ventes
SET prix = 10000
WHERE prix > 10000;

-- Uniformiser la casse
UPDATE clients
SET nom = UPPER(nom),
    email = LOWER(email);

3.4 Suppression des duplicatas

Identifier et supprimer les doublons
-- Identifier les doublons
SELECT email, COUNT(*)
FROM clients
GROUP BY email
HAVING COUNT(*) > 1;

-- Supprimer les doublons (garder le plus petit ID)
DELETE FROM clients
WHERE id NOT IN (
    SELECT MIN(id)
    FROM clients
    GROUP BY email
);

-- Alternative avec CTE (PostgreSQL, SQL Server)
WITH doublons AS (
    SELECT id, 
           ROW_NUMBER() OVER (PARTITION BY email ORDER BY id) AS rn
    FROM clients
)
DELETE FROM clients
WHERE id IN (SELECT id FROM doublons WHERE rn > 1);

4. Transformation et agrégation des données

4.1 Normalisation des données (Min-Max)

Normalisation sur échelle 0-1
WITH stats AS (
    SELECT MIN(prix) AS min_prix, MAX(prix) AS max_prix
    FROM ventes
)
SELECT 
    id,
    prix,
    (prix - min_prix) / (max_prix - min_prix) AS prix_normalise
FROM ventes, stats;

4.2 Standardisation (Z-score)

Moyenne = 0, écart-type = 1
SELECT 
    id,
    prix,
    (prix - AVG(prix) OVER()) / STDDEV(prix) OVER() AS prix_standardise
FROM ventes;

4.3 Agrégation des données

GROUP BY avec fonctions d'agrégation
-- Total des ventes par région
SELECT 
    region, 
    SUM(montant) AS total_ventes,
    COUNT(*) AS nb_transactions,
    AVG(montant) AS panier_moyen
FROM ventes
GROUP BY region
ORDER BY total_ventes DESC;

-- Ventes par mois
SELECT 
    DATE_TRUNC('month', date_vente) AS mois,
    SUM(montant) AS total_mensuel,
    COUNT(*) AS nb_ventes
FROM ventes
GROUP BY DATE_TRUNC('month', date_vente)
ORDER BY mois;

4.4 Création de tables dérivées

CREATE TABLE AS
-- Table des ventes normalisées
CREATE TABLE ventes_normalisees AS
SELECT 
    id, 
    region,
    date_vente,
    (prix - AVG(prix) OVER()) / STDDEV(prix) OVER() AS prix_normalise,
    (quantite - AVG(quantite) OVER()) / STDDEV(quantite) OVER() AS qte_normalisee
FROM ventes;

-- Table des résumés par région
CREATE TABLE resume_ventes_region AS
SELECT 
    region, 
    SUM(montant) AS total_ventes,
    COUNT(*) AS nb_transactions,
    AVG(montant) AS panier_moyen
FROM ventes
GROUP BY region;

5. Inspection des données transformées

Après le prétraitement, il est recommandé d'inspecter de nouveau les données pour vérifier leur qualité.

Validation des transformations
-- Vérifier la normalisation (moyenne proche de 0, écart-type proche de 1)
SELECT 
    AVG(prix_normalise) AS moyenne,
    STDDEV(prix_normalise) AS ecart_type
FROM ventes_normalisees;

-- Vérifier qu'il n'y a plus de valeurs manquantes
SELECT 
    COUNT(*) - COUNT(prix_normalise) AS manquants
FROM ventes_normalisees;

-- Vérifier l'absence de doublons
SELECT COUNT(*) - COUNT(DISTINCT id) AS doublons
FROM ventes_normalisees;

6. Automatisation avec les vues SQL

Les vues permettent de sauvegarder des requêtes complexes pour réutilisation, sans stocker physiquement les données.

CREATE VIEW
-- Vue des clients propres
CREATE VIEW vue_clients_clean AS
SELECT *
FROM clients
WHERE email IS NOT NULL 
  AND age BETWEEN 0 AND 120
  AND nom IS NOT NULL;

-- Vue des ventes normalisées
CREATE VIEW vue_ventes_normalisees AS
SELECT 
    id,
    region,
    date_vente,
    (prix - AVG(prix) OVER()) / STDDEV(prix) OVER() AS prix_standardise
FROM ventes;

-- Utiliser la vue comme une table
SELECT * FROM vue_ventes_normalisees WHERE prix_standardise > 2;
Avantage des vues :

Les vues ne dupliquent pas les données. Elles se mettent à jour automatiquement quand les tables sources changent.

7. Bonnes pratiques de prétraitement

1. Toujours sauvegarder avant de modifier

Créez une copie de la table avant tout DELETE ou UPDATE destructeur.

2. Tester sur un échantillon

Utilisez LIMIT ou une condition pour tester vos transformations sur un petit sous-ensemble.

3. Documenter les transformations

Gardez une trace des règles de nettoyage (comment vous avez traité les NULL, doublons, etc.).

4. Utiliser des transactions

BEGIN TRANSACTION; ... COMMIT; permet d'annuler en cas d'erreur.

5. Préférer les vues aux modifications directes

Les vues préservent les données brutes et permettent une traçabilité parfaite.

Checklist avant de commencer :
  • ✅ Avez-vous une sauvegarde ?
  • ✅ Avez-vous identifié toutes les colonnes à nettoyer ?
  • ✅ Avez-vous défini les règles de transformation ?
  • ✅ Avez-vous testé sur un échantillon ?

8. FAQ — Prétraitement SQL

Comment gérer les valeurs manquantes dans une colonne numérique ?

Plusieurs stratégies : (1) suppression des lignes si peu nombreuses, (2) imputation par la moyenne (distribution symétrique), (3) imputation par la médiane (distribution asymétrique), (4) imputation par 0 ou une valeur par défaut, (5) prédiction par régression (avancé). Le choix dépend du contexte métier.

Comment détecter des doublons sur plusieurs colonnes ?

SELECT colonne1, colonne2, COUNT(*) FROM table GROUP BY colonne1, colonne2 HAVING COUNT(*) > 1; Cette requête identifie les combinaisons dupliquées.

Quelle est la différence entre DELETE et TRUNCATE ?

DELETE supprime des lignes une par une (plus lent, peut être annulé avec ROLLBACK, peut avoir une clause WHERE). TRUNCATE supprime toutes les lignes en une fois (très rapide, ne peut pas être annulé sans sauvegarde).

Comment normaliser des données entre 0 et 1 en SQL ?

SELECT (colonne - min_col) / (max_col - min_col) AS normalise FROM table; Il faut calculer le min et le max au préalable, via une sous-requête ou une CTE.

Les vues ralentissent-elles les requêtes ?

Les vues simples non matérialisées sont réécrites par le SGBD dans la requête principale. Elles n'ajoutent pas de surcoût significatif. Les vues matérialisées (PostgreSQL) stockent physiquement les données et peuvent accélérer les requêtes, mais nécessitent un refresh.

Comment traiter les valeurs aberrantes (outliers) ?

Méthode de l'IQR (intervalle interquartile) : WHERE valeur NOT BETWEEN Q1 - 1.5*IQR AND Q3 + 1.5*IQR. Ou méthode Z-score : WHERE ABS(valeur - moyenne) / ecart_type > 3. Décidez ensuite de supprimer, plafonner ou conserver selon le contexte.

Conclusion

Le prétraitement et l'inspection des données avec SQL sont des étapes essentielles pour garantir la qualité des données avant leur utilisation en analyse ou en modélisation. SQL propose une panoplie d'outils pour détecter, nettoyer et transformer les données, rendant le processus plus efficace.

À retenir

  • Inspection : LIMIT, COUNT, IS NULL, statistiques descriptives
  • Nettoyage : suppression des NULL, imputation, correction des incohérences, dédoublonnage
  • Transformation : normalisation (Min-Max), standardisation (Z-score), agrégation
  • Automatisation : vues SQL pour réutiliser les données propres
  • Bonnes pratiques : sauvegardes, transactions, tests sur échantillons
Pour aller plus loin : Découvrez notre guide pratique sur le nettoyage de données avec SQL pour des techniques avancées.
Faites parler vos données
Apprenez les méthodes et les outils pour extraire de la valeur stratégique : Data Science : Le guide complet des méthodes et outils.
 

Recevez la veille IA & Data qui compte vraiment

 

    Analyses claires, outils concrets et tendances IA sans bruit.     Rejoignez les lecteurs de IANA Data.