Extrayez R2 dans plusieurs rapports et enregistrez-le dans un fichier .txt ou .CSVSalut,
J'ai exécuté un script qui automatise plusieurs analyses de réseau neuronal (NN). À chaque exécution, le script enregistre un rapport NN sous forme de fichier PDF, y compris les valeurs R ^ 2 de formation et de validation. Cela devient un problème car j'ai enfin environ 1000 fichiers PDF.
Veuillez consulter le script ci-dessous
dt = Open( "E:/Subset of9Year.jmp" )
Summarize( locs = BY(dt:ID) );
//To create a subset of each ID for Neural Input
For(
j=1, j<=NItems(locs), j++,
file = dt << Select Where(locs[j] == Char (:ID)) << Subset(
file,
Output Table Name("Model Subset File")
);
//Run Neural Network with 2 layers with 6/3 nodes
NN = file << Neural(
Y( :Name( "SoilMoisture(kg.m-2) or (mm)" ) ),
X(
:Name( "Tmax(K)" ),
:Name( "Tmin(K)" ),
:Name( "Precip(mm)" ),
),
Informative Missing( 0 ),
Transform Covariates( 1 ),
Validation Method( "KFold", 7 ),
Set Random Seed( 1234 ),
Fit(
NTanH( 1 ),
NLinear( 1 ),
NGaussian( 1 ),
NTanH2( 3 ),
NGaussian2( 3 ),
Transform Covariates( 1 ),
Robust Fit( 1 ),
Penalty Method( "Absolute" ),
Number of Tours( 10 ),
//Show Estimates( 1 ), //show estimates
//Diagram( 1 ),
//Plot Actual by Predicted( 1 ), // print plot obj vs predicted
Save Formulas,
//Get RSquare Test //Get RSquare Validation
)
);
//Read and save each report as a PDF file<BR /> NNReport = NN << Report;
NNReport << Save PDF("E:/result/model_"|| Char (j)||".pdf");
);Existe-t-il une méthode pour extraire R2 dans plusieurs rapports et les enregistrer dans un fichier?
Merci d'avance. Toute suggestion est la bienvenue.
Re: Extraire R2 dans plusieurs rapports et enregistrer dans un fichier .txt ou .CSVEn utilisant la capacité de JMP pour analyser n'importe quel élément dans la sortie d'affichage, à travers les arborescences d'affichage, vous pouvez récupérer n'importe quelle sortie souhaitée. Voici un exemple simple pour obtenir le RSquare de validation à partir d'une sortie neuronale
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Boston Housing.jmp" );
obj = Neural(
Y( :mvalue ),
X( :crim, :indus, :chas, :nox, :rooms, :age, :distance, :radial ),
Go
);
rSquare = (report(obj)["Validation"]["mvalue"][NumberColBox(1)]<<GET></GET>
La documentation sur les arborescences d'affichage se trouve dans le Guide de script
Aide => Bibliothèque de documentation JMP
puis regardez dans le Guide de Scripting
Re: Extraire R2 dans plusieurs rapports et enregistrer dans un fichier .txt ou .CSVJ'essaie d'enregistrer la valeur rSquare en utilisant Enregistrer le texte. Cependant, il ne peut pas créer de fichier texte.
Si je comprends bien (peut-être mal), le script obtient la valeur rSquare et l'enregistre quelque part dans JMP. Ensuite, j'ai utilisé Enregistrer le texte pour enregistrer la valeur dans un fichier .txt.
Le message d'erreur JMP est "rSquare << / * ### * / Save Text ("
/GYST_ERIK/pdm.txt ") / * ### * /;
{} "
Pouvez-vous m'aider s'il vous plaît?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Boston Housing.jmp" );
obj = Neural(
Y( :mvalue ),
X( :crim, :indus, :chas, :nox, :rooms, :age, :distance, :radial ),
Go
);
rSquare = (report(obj)["Validation"]["mvalue"][NumberColBox(1)]<<GET></GET>
Re: Extraire R2 dans plusieurs rapports et enregistrer dans un fichier .txt ou .CSVLa fonction que vous souhaitez utiliser est
Enregistrer le fichier texte ()
Regardez dans l'éditeur de script et il a un exemple et des options supplémentaires qui peuvent être utilisées.
Puisque votre variable est une chaîne, vous pouvez utiliser
Save Text File("D:/GYST_ERIK/pmd.txt", rSquare);
ou peut-être
Save Text File("D:/GYST_ERIK/pmd.txt", "Boston Results " || rSquare);