Estrarre R2 in più report e salvare in un file .txt o .CSVCiao,
Ho eseguito uno script che automatizza più analisi della rete neurale (NN). In ogni esecuzione, lo script salva un report NN come file PDF, inclusi i valori R ^ 2 di Training e Convalida. Diventa un problema dato che finalmente ho circa 1000 file PDF.
Si prega di consultare lo script di seguito
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");
);Esiste un metodo per estrarre R2 in più report e salvarli in un file?
Grazie in anticipo. Qualsiasi suggerimento è il benvenuto.
Ri: Estrai R2 in più report e salvalo in un file .txt o .CSVUtilizzando la capacità di JMP di analizzare qualsiasi elemento all'interno dell'output di visualizzazione, attraverso gli alberi di visualizzazione, è possibile acquisire qualsiasi output desiderato. Ecco un semplice esempio di come ottenere la convalida RSquare da un'uscita neurale
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 documentazione sugli alberi di visualizzazione è disponibile nella Guida agli script
Aiuto => Libreria di documentazione JMP
quindi consulta la Guida agli script
Ri: Estrai R2 in più report e salvalo in un file .txt o .CSVProvo a salvare il valore rSquare usando Salva testo. Tuttavia, non è possibile creare un file di testo.
A quanto ho capito (forse sbagliato), lo script ottiene il valore rSquare e lo salva da qualche parte in JMP. Quindi ho usato Salva testo per salvare il valore in un file .txt.
Il messaggio di errore JMP è "rSquare << / * ### * / Salva testo ("
/GYST_ERIK/pdm.txt ") / * ### * /;
{}"
Mi potete aiutare per favore?
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>
Ri: Estrai R2 in più report e salvalo in un file .txt o .CSVLa funzione che vuoi usare è
Salva file di testo ()
Cerca nell'Editor degli script e contiene un esempio e opzioni aggiuntive che possono essere utilizzate.
Poiché la tua variabile è una stringa, puoi usare
Save Text File("D:/GYST_ERIK/pmd.txt", rSquare);
o forse
Save Text File("D:/GYST_ERIK/pmd.txt", "Boston Results " || rSquare);