JMP 18.1.2 Extraire les valeurs RSquare à partir de l'analyse Y par XExécution d'Analyse > Ajuster Y par X. J'ai le code ci-dessous qui ouvre une table de données mais il n'y a pas de valeurs RSquare dans la table. Avez-vous une idée de ce qui me manque ?
// Open Data Table
dt = Data Table( "Raw Data" );
// Run Fit Y by X Analysis with a By Variable
fitObj = dt << Fit Y by X( Y( :"Mean(VALUEABS)" ), X( :Mean ), By( :PARM_LABEL ) );
// Get the analysis report
rpt = fitObj << Get Report;
// Find all RSquare nodes in the report
rsquareNodes = rpt << Find All Matching Elements( "RSquare" );
Show( "Number of RSquare nodes found: " || Char( N Items( rsquareNodes ) ) );
// Initialize a list to store the by group and RSquare pairs
rsquareData = {};
// Loop over each RSquare node found
For( i = 1, i <= N Items( rsquareNodes ), i++,
{
// Extract the RSquare text and convert to numeric value
rsqText = rsquareNodes[i] << Get Text ; rsqVal = Num( rsqText ) ;
// Try to retrieve the by-group label.
parentObj = rsquareNodes[i] << Get Parent ; byLabel = "" ;
While( byLabel == "" & parentObj != {},
byLabel = parentObj << Get Text;
If( byLabel == "",
parentObj = parentObj << Get Parent
);
) ;
// Append the pair (by group label, RSquare value) to list.
Append( rsquareData, {byLabel, rsqVal} ) ; }
);
Show( rsquareData );
// Create a new data table to store the RSquare values by by-group.
rsqDT = New Table( "RSquare Values",
Add Columns(
Column( "By Group", Character, "Nominal" ),
Column( "RSquare", Numeric, "Continuous" )
)
);
// Populate the new data table with the extracted values
For( i = 1, i <= N Items( rsquareData ), i++,
{New Row( rsqDT ) ; rsqDT:("By Group")[Row()] = rsquareData[i][1] ; rsqDT:RSquare[
Row()] = rsquareData[i][2] ; }
);
// Display the new data table
Show( rsqDT );
(Ci-dessus, JSL est passé de l'affichage en texte brut au format d'affichage JMP JSL) txnelson
Automatisation et scriptsRé: JMP 18.1.2 Extraire les valeurs RSquare de l'analyse Y par XQuel RSquare recherchez-vous ? En général, vous le feriez manuellement dans JMP, puis vous prendriez le script que JMP crée pour vous (ou utiliseriez le workflow et obtiendriez le script à partir de celui-ci). Donc dans ce cas :
1. Ouvrez votre table
2. Exécutez l'analyse

3. Apportez les modifications nécessaires au rapport/à l'analyse (j'adapte la ligne)

4. Transformez le tableau en tableau de données

5. Obtenir le script
// Open Data Table: Big Class.jmp
// → Data Table("Big Class")
Open("$SAMPLE_DATA/Big Class.jmp");
// Combine similar TableBoxes into a Data Table
// → Data Table("Untitled")
Local({obj},
obj = Data Table("Big Class") << Bivariate(
Y(:height),
X(:weight),
Fit Line({Line Color({230, 159, 0})}),
By(:age)
);
Report(obj[1])["Linear Fit", "Summary of Fit", Table Box(1)] <<
Make Combined Data Table;
obj[1] << Close Window;
);
Ensuite, vous pouvez modifier cela pour l'améliorer un peu et obtenir quelque chose comme
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
biv = dt << Bivariate(
Y(:height),
X(:weight),
Fit Line({Line Color({230, 159, 0})}),
By(:age)
);
dt_result = Report(biv[1])["Linear Fit", "Summary of Fit", Table Box(1)] << Make Combined Data Table;
dt_result << Select Where(:Column 1 != "RSquare") << delete rows << clear select;Ré: JMP 18.1.2 Extraire les valeurs RSquare de l'analyse Y par XIl y avait plusieurs problèmes avec votre syntaxe. Vous trouverez ci-dessous un exemple de la façon dont je traiterais le problème
// Open Data Table
dt = Data Table( "Raw Data" );
// Run Fit Y by X Analysis with a By Variable
fitObj = dt << Fit Y by X( Y( :"Mean(VALUEABS)" ), X( :Mean ), By( :PARM_LABEL ) );
dt=current data table();
fitObj = dt << Bivariate(
Y( :height ),
X( :weight ),
Fit Line( {Line Color( {212, 73, 88} )} ),
By( :sex )
);
nrpts = nitems(fitObj);
report(fitobj[1])[OutlineBox(1)] << get title
// Find all RSquare nodes in the report
Show( "Number of RSquare nodes found: " || Char( nrpts ) );
rsquareData = {};
// Initialize a list to store the by group and RSquare pairs
For Each( {obj}, fitObj,
r2=report(obj);
rsq = (r2["Linear Fit","Summary of Fit",numbercolbox(1)]<<GET></GET>Ré: JMP 18.1.2 Extraire les valeurs RSquare de l'analyse Y par XLe code initial ressemble définitivement à celui généré par l'IA, ce qui expliquerait les nombreuses erreurs de syntaxe.
Ré: JMP 18.1.2 Extraire les valeurs RSquare de l'analyse Y par XMerci pour la réponse. Je recherche la valeur RSquare. J'avais exécuté l'analyse Fit Y By X et pris le code du journal. J'ai ensuite ajouté une ligne d'ajustement, mais cette action n'a pas été enregistrée. Cela faisait un moment et j'avais oublié la fonction clic droit et Créer dans une table de données. Merci donc pour ce rappel à ce sujet.
Ré: JMP 18.1.2 Extraire les valeurs RSquare de l'analyse Y par XJim, merci pour cette solution. Je l'apprécie vraiment.
Ré: JMP 18.1.2 Extraire les valeurs RSquare de l'analyse Y par XVous avez tout à fait raison ! Comme je l'ai déjà dit, après avoir oublié l'option de clic droit Créer un tableau de données, j'ai eu recours à ChatGPT.