Améliorez votre analyse de régression grâce à la puissante combinaison de techniques robustes et de JMP 18 , désormais doté d' une intégration transparente avec Python .
Étude de cas simple
Voici un exemple de tableau de données.

- Le tableau de données contient 99 lignes de données simulées
- Les données ont été conçues pour illustrer certains types de valeurs aberrantes difficiles à détecter
Pouvez-vous détecter les valeurs aberrantes dans cet exemple de tableau de données ?
Dans un premier temps, nous pouvons examiner les données via une approche univariée.


Nous n’avons pas pu identifier les valeurs aberrantes en utilisant une approche univariée.
Cependant, si nous élargissons notre champ d’application à deux dimensions, nous pourrions rencontrer des valeurs aberrantes.


Le scénario précédent n’est pas trop désastreux puisque nous pouvons identifier les valeurs aberrantes grâce à une analyse graphique.
Cependant, que se passe-t-il si nous avons affaire à une pléthore de variables, disons supérieures à 10 ?
Régression médiane robuste à l'aide du tableau de données Anscombe
Pour atténuer l'impact des valeurs aberrantes, nous pouvons utiliser des techniques de régression robustes telles que la régression médiane.
La régression médiane robuste est une méthode statistique qui utilise la régression médiane pour minimiser les écarts absolus et résiste aux violations des hypothèses homoscédastiques et normales.
Dans JMP Pro, appliquez sans effort la régression médiane en sélectionnant la personnalité « Régression généralisée » et en optant pour la distribution « Régression quantile », en spécifiant le quantile à 0,5 via la plateforme Ajuster le modèle .
Ce qui suit présente le résultat de la régression médiane appliquée à l'exemple d'ensemble de données « Anscombe » dans JMP.



Si vous utilisez JMP 18, et non JMP Pro 18, vous pouvez appliquer la régression médiane grâce à la nouvelle fonctionnalité de JMP 18, l'intégration Python.
import jmp
import jmputils
dt = jmp.open(jmp.SAMPLE_DATA + "anscombe.jmp")
# Import Modules
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import numpy as np
from sklearn.linear_model import LinearRegression
# Reshape Data
x = np.reshape(dt['x3'],(-1,1))
y = np.reshape(dt['y3'],(-1,1))
print(x)
print(y)
# Mean Regression vs Median Regression
lr = LinearRegression()
lr.fit(x, y)
beta_ls = lr.intercept_, lr.coef_[0]
q = 0.5
rm = sm.QuantReg(y, sm.add_constant(x)).fit(q, prepend=True)
beta_md = rm.params[0], rm.params[1]
# Print Mean & Median Regression Coefficient
print(beta_ls)
print(beta_md)
La sortie des coefficients bêta est répertoriée dans les fenêtres LOG comme ci-dessous.
(array([<FONT color="#0000FF"><STRONG>3.00245455</STRONG></FONT>]), array([<FONT color="#0000FF"><STRONG>0,49972727</STRONG></FONT>]))
(<FONT color="#FF0000"><STRONG>4.009997266957748</STRONG></FONT>, <FONT color="#FF0000"><STRONG>0,34500026527269356</STRONG></FONT>)
Juste pour vous informer, les résultats suivants indiquent le coefficient de régression moyen calculé à l'aide de JMP.
Vous pouvez comparer les coefficients bêta ci-dessus pour la régression moyenne et médiane.

Pensées finales ;
La démonstration fournie offre une compréhension fondamentale de l'interaction JMP et Python dans JMP 18 .
Exploiter la puissance de l'intégration Python dans JMP présente une opportunité passionnante d'améliorer vos prouesses analytiques, vous permettant d'élargir votre expertise et d'obtenir des informations plus solides.
Reformaté ici pour faciliter la lecture, le copier-coller.
import jmp
# from jmputils import jpip
# jpip('install', 'statsmodels scikit-learn matplotlib numpy pandas')
dt = jmp.open(jmp.SAMPLE_DATA + "anscombe.jmp")
# Import Modules
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
import numpy as np
from sklearn.linear_model import LinearRegression
# Reshape Data
x = np.reshape(dt['x3'],(-1,1))
y = np.reshape(dt['y3'],(-1,1))
print(x)
print(y)
# Mean Regression vs Median Regression
lr = LinearRegression()
lr.fit(x, y)
beta_ls = lr.intercept_, lr.coef_[0]
q = 0.5
rm = sm.QuantReg(y, sm.add_constant(x)).fit(q, prepend=True)
beta_md = rm.params[0], rm.params[1]
# Print Mean & Median Regression Coefficient
print(beta_ls)
print(beta_md)
@lala Des excuses pour tout inconvénient causé. Actuellement, la version d'évaluation de JMP 18 n'est pas accessible. Cependant, rassurez-vous, nous travaillons avec diligence pour qu'une nouvelle version d'essai de JMP soit disponible très prochainement. Merci pour votre patience et votre compréhension.