Coûts Médicaux Personnels
Kaggle1 338 assurés avec coût médical individuel annuel. Variables : âge, sexe, IMC, nombre d'enfants, tabagisme, région. Dataset de référence pour la régression des dépenses de santé et la tarification assurance santé.
Uploader le fichier (CSV, Parquet, Excel — max 50 MB)
Score qualité — 0/100
- · Complétude des métadonnées
- · Taux de valeurs nulles
- · Présence d'un dictionnaire
- · Avis et téléchargements
- · Disponibilité des benchmarks
Informations sur les données
1 338
Lignes
7
Colonnes
0.05
MB
0
Avis
Variable cible
charges
Licence
CC0 1.0 (domaine public)
Intégrité SHA256
388eff679557d08ac19f463d025de5e0b4adc482537c8456d19934d78621fd47
Ce que vous pouvez apprendre avec ce dataset
Compétences techniques
- Modélisation GLM (Poisson, Gamma, Tweedie)
- Calcul de la prime pure et technique
- Modélisation des dépenses de santé
- Segmentation et profils patients
- Validation croisée et évaluation des modèles
Applications métier
- Prévision des coûts de santé
- Gestion des risques santé
Aperçu des données (10 premières lignes) Cliquez sur une ligne pour l'agrandir
Statistiques & Profil des données
Distributions des variables
Matrice de corrélation (variables numériques)
Visualisations des données
Basées sur les données réelles du dataset
Parcours data complet — de A à Z
Suivez chaque étape du travail data science appliqué sur ce dataset.
Actions concrètes
- Importer le CSV/Parquet avec pandas
- Vérifier le nombre de lignes, colonnes et types
- Identifier la variable cible (ClaimNb, Exposure)
- Comprendre le dictionnaire des variables
Librairies & outils
Exemple de code
df = pd.read_csv("freMTPL2freq.csv")
print(df.dtypes)
print(df.shape) # ex: (678013, 12)
Actions concrètes
- Traiter les valeurs manquantes (NaN)
- Supprimer ou plafonner les outliers (ex: Exposure > 1)
- Créer la variable réponse : fréquence = ClaimNb / Exposure
- Encoder les variables catégorielles (VehBrand, Region)
- Découper train / test (80/20 par millésime)
Librairies & outils
Exemple de code
df["Frequency"] = df["ClaimNb"] / df["Exposure"]
df = df[df["Exposure"] <= 1] # Plafonner l'exposure
df["VehBrand"] = df["VehBrand"].astype("category")
Actions concrètes
- Calculer la fréquence moyenne par segment (âge, région, bonus)
- Tracer les distributions des sinistres et de l'exposition
- Identifier les corrélations entre features
- Visualiser les outliers avec boxplots
- Analyser le ratio sinistres/primes brut
Librairies & outils
Exemple de code
freq_by_age = df.groupby("DrivAge")["Frequency"].mean()
freq_by_age.plot(kind="bar", title="Fréquence par âge du conducteur")
Actions concrètes
- Modèle fréquence : GLM Poisson avec offset = log(Exposure)
- Modèle sévérité : GLM Gamma sur les sinistres non-nuls
- Calculer la prime pure = Fréquence × Sévérité
- Comparer avec XGBoost / GBM en benchmark
- Analyser les coefficients (relativités par variable)
Librairies & outils
Exemple de code
import statsmodels.api as sm glm_freq = sm.GLM( y, X, family=sm.families.Poisson(), offset=np.log(df["Exposure"]) ).fit() print(glm_freq.summary())
Actions concrètes
- Calculer la prime de référence (profil neutre)
- Extraire les coefficients multiplicatifs par variable
- Construire la grille tarifaire (tableau de relativités)
- Comparer les primes modélisées vs primes marché
- Tester différents scénarios de chargements
Librairies & outils
Exemple de code
# Relativités par classe d'âge
relativites = np.exp(glm_freq.params)
grille = pd.DataFrame({
"Variable": X.columns,
"Relativite": relativites
})
Actions concrètes
- Calculer Gini, AUC sur le test set
- Tracer la courbe de lift (classement des risques)
- Faire un backtesting sur données hors-période
- Analyser le ratio S/P modélisé vs observé par décile
- Documenter les limites et biais potentiels
Librairies & outils
Exemple de code
from sklearn.metrics import roc_auc_score
gini = 2 * roc_auc_score(y_test, y_pred) - 1
print(f"Gini coefficient: {gini:.4f}")
Accès au dataset
import pandas as pd # Chargement direct depuis StochastiQdata url = "https://mjqtthaypifkdlaneymx.supabase.co/storage/v1/object/public/datasets-files/ad5761c3-82c6-4918-aa05-3eac8ed20dab/8f5e4ba0-fa53-40fe-8aac-2d2a98e12c49.csv" df = pd.read_csv(url) # Aperçu print(df.shape) # (1 338 lignes, 7 colonnes) print(df.head())
Benchmarks — Performance des modèles
Aucun benchmark disponible pour ce dataset.
Soyez le premier à soumettre vos résultats !
Modèles
Aucun modèle affilié pour le moment.
Soyez le premier à partager un modèle entraîné sur ce dataset.
Notebooks
Aucun notebook disponible pour ce dataset.
Partagez votre analyse et contribuez à la communauté !
Avis de la communauté
Aucun avis pour ce dataset.
Soyez le premier à donner votre avis !
Questions à explorer avec ce dataset
Quels facteurs influencent le plus la fréquence des sinistres ?
Comment segmenter le portefeuille par niveau de risque ?
La sévérité des sinistres suit-elle une loi log-normale ou Gamma ?
Existe-t-il des effets non-linéaires entre l'âge du véhicule et la sinistralité ?
Comment construire un modèle de tarification à deux parties (fréquence × coût moyen) ?
Quelles variables proxy peuvent remplacer des données manquantes ou réglementairement sensibles ?
Quels profils de patients génèrent les dépenses de santé les plus élevées ?
Comment prédire le risque d'hospitalisation à 12 mois ?
Les pathologies chroniques expliquent-elles l'essentiel de la variance des coûts ?
Existe-t-il des clusters de patients avec des comportements de consommation similaires ?
Comment modéliser la récurrence des séjours hospitaliers ?
Quels indicateurs avancés permettent de détecter une dégradation de l'état de santé ?
Découvrez plus de cas d'usage et méthodologies sur notre page Modélisation
Voir tous les parcoursVous aimerez aussi
Citer ce dataset
Historique des versions 1 version
Seed initial : insurance.csv