En 2017, @Kevin_Anderson a soumis une demande d'ajout d'une fonctionnalité permettant de calculer les fonctions de moyennes robustes et d'écart type dans JSL et l'éditeur de formules .
En 2022, une version étendue de ce souhait a été soumise par @jthi :
Ajouter des fonctions de normalisation et des fonctions statistiques robustes (et des fonctions matricielles)
avec le commentaire :
@jthi a écrit : La plupart de ces fonctionnalités pourraient déjà être implémentées assez facilement à l'aide des fonctions statistiques existantes, mais je préférerais de loin qu'elles soient intégrées nativement à JMP (une implémentation native serait peut-être plus rapide ?). À mon avis, ce sont des fonctions très utiles et puissantes (comme toutes les autres fonctions de colonnes statistiques).
Une autre fonction permettant de déterminer un estimateur robuste de la variation des valeurs :
MAD : Écart absolu médian.
https://en.wikipedia.org/wiki/Median_absolute_deviation

qui peut être déterminé via (*) :
- calculer la médiane() des valeurs
- calculer la différence entre les valeurs et la médiane
- enlever les panneaux
- calculer la médiane
Si vous souhaitez calculer le MAD pour une colonne, vous pouvez utiliser la plateforme Tables/résumé :

Souvent, les utilisateurs souhaitent calculer l'écart absolu moyen (MAD) pour des groupes individuels.
Mais malheureusement, il n'existe pas encore de fonction Col MAD (valeurs, regroupement) en JSL.
En revanche, il est très facile de suivre les étapes de (*) et de calculer le MAD « manuellement » via JSL :
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
t0=hptime();
New Column( "MAD",
Formula( Col Median( Abs( :height - Col Median( :height, :sex ) ), :sex ) )
);
dt << run formulas();
show((hptime()-t0)/1000000)
Mais attendez - la médiane de colonne à l'intérieur de la médiane de colonne semble effrayante - que se passe-t-il si JMP calcule les valeurs encore et encore avec chaque ligne() ?
Vérifions si c'est le cas – en agrandissant le tableau de données (6,4 millions de lignes) :
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
For Each( {i}, {1, 2},
dts = Repeat( {dt}, 400 );
dt = dt << Concatenate( dts, );
);
Avec la table de données plus grande, le calcul prend plusieurs minutes (JMP18.2.1).
Une astuce facile :
Divisez le calcul en 2 calculs :
- Commencez par calculer une colonne contenant les valeurs médianes groupées.
- puis calculer le MAD
une autre astuce :
- Attendre la prochaine version de JMP ?
Existe-t-il d'autres astuces ?
@hogi a écrit :
une autre astuce :
- Attendre la prochaine version de JMP ?
Je viens de l'essayer avec la version EA de JMP19 - Une amélioration significative !
-> quelques secondes seulement au lieu de plusieurs minutes
merveilleux : )