Comment effectuer une régression linéaire multiple dans Power BI.
Oct 22, 2024Qu'est-ce que la régression linéaire multiple ?
La régression linéaire multiple est un modèle statistique qui prédit un événement sur la base de plusieurs variables explicatives. Chaque variable représente un facteur qui influence l'événement et se voit attribuer une valeur pondérée.
La régression linéaire multiple est une extension de la régression linéaire simple. La régression linéaire simple prédit le résultat d'un événement sur la base d'une variable dépendante. Le calcul de chaque valeur pondérée est effectué à l'aide de données historiques.
Cas d'utilisation de la régression linéaire multiple :
Estimation de la tension artérielle. Nous pouvons utiliser la régression linéaire multiple pour prédire la tension artérielle d'une personne en fonction de facteurs tels que la taille, le poids, l'âge et le nombre d'heures d'exercice par semaine.
Prévoir la croissance des cultures. Les agriculteurs peuvent utiliser la régression linéaire multiple pour créer l'équation d'une formule linéaire en utilisant des facteurs tels que les précipitations, la température et la quantité d'engrais pour prédire l'effet sur la croissance des cultures.
Scores sportifs. Les analystes sportifs peuvent utiliser la régression linéaire multiple pour prédire les points marqués par les joueurs en fonction du nombre d'heures de yoga, d'haltérophilie, de cardio ou d'exercices de faible intensité qu'ils pratiquent.
La régression linéaire multiple utilise l'équation suivante :
Y = b0 + b1x1 + b2x2 + ... + bpxp
Où :
Y = la valeur prédite (prix)
b0 = Y - intercept
b1 ... bp = Coefficients de pente pour chaque variable explicative
x1... xp = Variables explicatives (chambres, salles de bains, superficie)
Nous allons prédire le prix estimé d'une maison en fonction du nombre de chambres, de salles de bains et de mètres carrés sélectionnés.
Pour ce faire, nous calculons les valeurs des coefficients de pente (b1 ...bp) et de l'ordonnée à l'origine (b0) à l'aide d'un script R dans Power Query Editor. Ensuite, nous allons créer des paramètres d'hypothèses comme nos variables explicatives (x1... xp). Enfin, nous compléterons la formule en tant que mesure et visualiserons nos prédictions.
Les mesures à prendre :
- Créer un script R dans l'éditeur Power Query
- Créer des paramètres d'hypothèses
- Créer une mesure de régression multiple Formule
Pour ce tutoriel, on a choisi un ensemble de données simple basé sur les prix des logements dans la région de King Country aux États-Unis à partir de Kaggle.com.
Pour les analyses de régression multiple, il est préférable de supprimer toutes les colonnes de l'ensemble de données qui ne sont pas incluses dans notre formule. Ces colonnes peuvent avoir un impact sur nos résultats. Notre formule est la suivante : prix = chambres (x) + salles de bains (y) + pieds carrés (z). On a donc supprimé toutes les colonnes qui ne sont pas le prix, les chambres, les salles de bains ou les pieds carrés. Vous pouvez le faire dans Excel avant d'importer vos données ou dans Power Query Editor dans Power BI Desktop.
Étape 1 : Créer un script R dans l'éditeur Power Query
Chargez votre jeu de données dans Power BI. Sur le ruban Accueil, cliquez sur Transformer les données.
Dans Power Query Editor, votre table étant sélectionnée dans le volet des requêtes, accédez au ruban Transformation et cliquez sur Exécuter un script R.
Remplacez le texte par défaut qui apparaît dans la boîte de script R par le script ci-dessous:
model <- lm(price ~ . , dataset)
df<- data.frame(coef(model))
names(df)[names(df)=="coef.model."] <- "coefficients"
df['variables'] <- row.names(df)
Appuyez sur Ok, et vous devriez obtenir un tableau qui ressemble à celui ci-dessous :
Les coefficients du tableau correspondent à notre équation de régression linéaire multiple !
Y = b0 + b1x1 + b2x2 + ... + bpxp
Y(Prix) = 74662.1 - 57906.6(chambres) + 7928.7(salles de bain) +309.6(pieds carrés)
Pour revenir au bureau Power BI, cliquez sur Fermer et Appliquer.
Étape 2 : Création des paramètres d'hypothèses
Maintenant que nous disposons de nos coefficients (b0,b1...bp), nous allons créer des paramètres d'hypothèses pour nos variables (x1...xp).
Un paramètre d'hypothèse vous permet de créer une tranche interactive avec une variable pour visualiser et quantifier une autre valeur dans votre rapport.
Dans le ruban Modélisation, cliquez sur Nouveau paramètre.
Name: Bathrooms
Data type: Whole Number
Minimum: 0
Maximum: 15
Increment: 1
Add slicer to this page: yes
Name: Bedrooms
Data type: Whole Number
Minimum: 0
Maximum: 15
Increment: 1
Add slicer to this page: yes
Name: Square footage
Data type: Whole Number
Minimum: 0
Maximum: 15
Increment: 1
Add slicer to this page: yes
Ces paramètres auront généré une série de valeurs possibles pour les chambres, les salles de bains et la superficie, que nous pourrons sélectionner en fonction de nos préférences.
Étape 3 : Créer une mesure pour la formule de régression
Avec notre formule de régression multiple de l'étape 1 :
Y(Prix) = 74662.1 - 57906.6(Bathrooms) + 7928.7(Bedrooms) +309.6(Square footage)
Nous pouvons maintenant créer une mesure DAX de cette formule en utilisant nos paramètres d'hypothèse comme variables.
Créez la mesure DAX ci-dessous :
Price = 74662.1 - 57906.6 * ( 'Bedrooms'[Bedrooms Value] ) + 7928.7 * ( 'Bathrooms'[Bathrooms Value] ) + 309.6 * ( 'Square footage '[Square footage Value])
Insérez un visuel de carte dans le rapport et sélectionnez la mesure que vous venez de créer pour le champ.
Défi bonus !
Essayez d'ajouter ces variables à l'équation de régression linéaire multiple !
Number of floors (Floors = GENERATESERIES(0, 4, 1))
Number of views (Views = GENERATESERIES(0, 4, 1))
Square footage of the lot (Sqft_lot = GENERATESERIES(0, 900000, 1))
Voici la nouvelle formule DAX :
Price = 76114.2 + 5237.4 * ( Bathrooms[Bathrooms Value] ) - 49819.3 * ( Bedrooms[Bedrooms Value] ) + 9491.5 * ( Floors[Floors Value] ) + 285.6 * ( 'Square footage '[Square footage Value]) - 0.81 * ( Sqft_lot[Sqft_lot Value] ) + 98795.2 * ( Views[Views Value] )
Conclusion :
Dans ce blog, nous avons exploité la puissance du moteur R de Power BI pour créer une formule de régression multiple et prédire le prix d'une maison. La régression linéaire multiple est utilisée pour prévoir des événements futurs sur la base de données historiques et est extrêmement utile pour la préparation et la prise de décision.