Fonctions de régression dans JMPExiste-t-il des fonctions préexistantes dans JMP pour certaines des régressions effectuées par Fit Y by X ou les plates-formes Fit Curve?
Pour la plupart de mon code, lorsque je veux les paramètres d'un polynôme 3P ou 2e ordre, etc. J'appellerai la plate-forme dans JMP avec une variable BY, puis «créer une table de données combinée». Cependant, le seul inconvénient est que JMP "a besoin" de rendre les graphiques afin de saisir la table de données ...
Eh bien, avec des données plus volumineuses, la variable BY est beaucoup trop grande et JMP meurt, manque de RAM ou a d'autres problèmes en essayant de faire cette opération (l'un de mes plus grands ensembles a une variable BY avec environ 40k valeurs uniques).
Un «correctif» serait simplement de supprimer le by et d'appeler la plate-forme dans une boucle FOR pour chacun des ensembles de données séparément. Je ne suis pas sûr que ce serait plus rapide ou pas ... Idéalement, je pourrais créer une seule matrice ou une série de matrices et obtenir rapidement des paramètres pour chaque ensemble de données. Cela pourrait être codé dans une fonction de couche JSL, mais si des fonctions existent dans JMP, la surcharge serait mieux contrôlée ...
Résumer:
1) JMP a-t-il des fonctions existantes qui peuvent calculer des coefficients de paramètres pour tout ce qui va au-delà de la régression linéaire de base
2) Sinon, existe-t-il de meilleures façons d'atteindre mes objectifs sur les plates-formes JMP actuelles?
3) Y a-t-il des fonctions JSL que les gens ont créées qui peuvent faire diverses régressions et renvoyer les coefficients
Merci!
AnalytiqueScriptingRe: Fonctions de régression dans JMPIl y a de nombreux points confus ou peu clairs dans votre message d'origine. Donc, plutôt que de les analyser, je vais concentrer mes commentaires sur la question n ° 1. Réponse: Oui. Avez-vous jeté un œil à la documentation JMP? Il existe littéralement des scores de méthodes de régression et de non régression dans JMP ... allant des bonnes moindres carrés ordinaires à l'ancienne, aux modèles linéaires généraux plus élégants / flexibles, aux méthodes complètement non linéaires / non basées sur la régression telles que les plates-formes Partition et Neural Network .
Re: Fonctions de régression dans JMPEn écho @P_Bartell il existe de nombreuses options pour modéliser les données. Concernant le n ° 2, Je ne comprends pas quel est votre objectif? Il semble que vous vouliez créer> des polynômes de premier ordre. Est-ce à partir de données d'observation ou d'une expérience? Je ne comprends pas ce que tu veux dire quand tu dis " J'appellerai la plate-forme dans JMP avec une variable BY "? Quelle plateforme?
Ne pas être belligérant, mais vous vous rendez compte de la raison pour laquelle la régression linéaire est appelée linéaire est parce que les coefficients sont linéaires, pas les termes du modèle.
Re: Fonctions de régression dans JMPPlutôt que de forcer JMP à créer une table de données à partir de la sortie d'affichage, j'ai constaté qu'il est souvent plus facile d'aller directement à la table d'intérêt et d'extraire les valeurs individuelles.Cette technique peut être utilisée soit pour générer toute la sortie avec une clause By puis passer par l'affichage, soit en générant un affichage à la fois, en extrayant ce que vous voulez, en l'enregistrant dans une table ou une liste ou une matrice, et puis fermant la sortie et passant à la régression suivante.

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
biv = dt << Bivariate(
invisible,
Y( :NPN1 ),
X( :PNP1 ),
Fit Special( Degree( 2 ), Centered Polynomial( 0 ), {Line Color( "Medium Dark Red" )} ),
by( :site ) // Where( :SITE == 1 )
);
dtOut = New Table( "The Ouput",
New Column( "Name", character ),
New Column( "Intercept" ),
New Column( "Beta" ),
New Column( "Beta^2" )
);
dtOut << add rows( N Items( biv ) );
For( i = 1, i <= N Items( biv ), i++,
dtOut:Name[i] = Word( -1, Report( biv[i] )[Outline Box( 1 )] << get title, " " );
values = (Report( biv[i] )["Parameter Estimates"][Number Col Box( 1 )]) << get;
dtOut:Intercept[i] = values[1];
dtOut:Beta[i] = values[2];
dtOut:Name( "Beta^2" )[i] = values[1];
);
biv << close window;
Re: Fonctions de régression dans JMPLa plate-forme non linéaire peut adapter des paramètres pour des formules librement définissables.
Veuillez consulter la documentation correspondante.
Re: Fonctions de régression dans JMPMerci à tous jusqu'à présent pour leurs commentaires. Laissez-moi essayer de clarifier certains. Fondamentalement, j'ai un ensemble de données qui contient ~ 40k sous-ensembles. En règle générale, pour obtenir des paramètres de régression, j'utiliserais une courbe d'ajustement ou un ajustement Y par X et j'utilisais la variable BY dans la plate-forme pour diviser les graphiques en sous-ensembles, puis ajuster ma ligne (dans ce cas, un polynôme de deuxième ordre, mais d'autres fois un 3P). D'après ce que j'ai vu, Fit Curve et Fit Y by X doivent rendre tous les graphiques pour créer les lignes et enregistrer les paramètres, ce qui coûte beaucoup de frais généraux.
Je ne savais pas s'il y avait un moyen de faire ce genre de chose sans rendre les graphiques - comme une fonction autonome qui ne produisait que les paramètres à partir de l'ajustement souhaité.
Re: Fonctions de régression dans JMPJ'aurais dû déclarer explicitement que je ne suis pas au courant d'une fonction directe pour créer les paramètres Polynomial ou 3P souhaités.Ma suggestion d'obtenir les résultats directement à partir de la sortie "Invisible", est une suggestion pour réduire les besoins en mémoire de la création de tables de données de sortie.
Re: Fonctions de régression dans JMP@txnelson Oui, j'ai joué avec ça dans le passé, et rendre la table invisible ne semblait pas rendre le rapport invisible ou privé également ... Je pense que le fait de rendre le rapport privé serait également une solution pour éviter les frais généraux liés au rendu des graphiques.