Guardando valores de R-Square del ajuste de spline de suavizadoHola a todos,
¿Hay alguna manera de guardar el valor de R-Square del ajuste de spline de suavizado en JSL? Me gustaría poder referenciarlo en un momento posterior.
¡Gracias!
Re: Guardando los valores de R-Square del ajuste de spline de suavizadoLa Plataforma Bivariada crea una estructura de árbol separada para cada uno de los niveles Por. Para acceder al valor de RSquare, todo lo que debe hacerse es apuntar al valor de RSquare como en la ejecución única de Bivariate, pero agregar un subíndice para el cual uno de los resultados de RSquares desea. A continuación se muestra una modificación simple de la secuencia de comandos, para colocar los valores de RSquare para los 5 sitios en una nueva tabla de datos
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
biv = Bivariate(
Y( :NPN1 ),
X( :PNP1 ),
Fit Spline( 100000, {Line Color( {204, 121, 41} )}, {Save Predicteds} ),
by( :site )
);
// Offset into the report object and get the RSquare value
RSquare = {};
For( i = 1, i <= N Items( biv ), i++,
Insert Into(
RSquare,
(Report( biv[i] )["Smoothing Spline Fit, lambda=100000"][Number Col Box( 1 )]
<< get)[1]
)
);
dtRSquare = New Table( "RSquareTable", New Column( "RSquares", values( RSquare ) ) );
Para comprender completamente cómo lidiar con los árboles de visualización de salida creados por JMP, le recomendamos que lea la sección sobre árboles de visualización en la Guía de scripting.
Ayuda ==> Libros ==> Guía de scripting
Re: Guardando los valores de R-Square del ajuste de spline de suavizadoSi agrego un "por (: SITIO)" en la función "Bivariada", tendré cinco gráficos en el informe. ¿Cómo puedo extraer los cinco valores de Rsquare y guardarlos como una nueva columna en la tabla?
Gracias,
Zihao
Re: Guardando los valores de R-Square del ajuste de spline de suavizadoGracias por la ayuda Jim!Re: Guardando los valores de R-Square del ajuste de spline de suavizado¡Gracias por la ayuda!Re: Guardando los valores de R-Square del ajuste de spline de suavizadoLa estructura de árbol de la pantalla de salida para la salida que está buscando, es diferente del ejemplo que di. Si hace clic con el botón derecho en el triángulo gris al lado del Ajuste bivariado del cuadro de contorno NPN1 Por PNP1 (), y luego seleccione
Editar ==> Mostrar estructura de árbol
Puedes ver la Estructura del Árbol para todos los resultados.
A continuación se muestra el script utilizando su salida
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
biv = Bivariate(
Y( :NPN1 ),
X( :PNP1 ),
Fit Spline( 100000, {Line Color( {204, 121, 41} )}, {Save Predicteds})
);
// Offset into the report object and get the RSquare value
RSquare = (Report(biv)["Smoothing Spline Fit, lambda=100000"][NumberColBox(1)]<<GET></GET>Re: Guardando los valores de R-Square del ajuste de spline de suavizadoEl valor del cuadrado de R está contenido en un cuadro de col numérico en este caso, no en un cuadro de número. Puede encontrar el contenedor para el valor que desea al ver la estructura de árbol. Consulte esta página para obtener instrucciones sobre eso: https://www.jmp.com/support/help/14/view-the-display-tree.shtml
Solo necesitas reemplazar la última línea con esto:
RSquare = (Report(biv)["Smoothing Spline Fit, lambda=100000"][numbercolbox(1)]<< Get)[1];
El cuadro << Obtener mensaje al número col devolverá una lista de valores. Alternativamente, puede utilizar "<< Get As Matrix". El [1] devuelve el primer elemento de la lista, que es el valor de R cuadrado.
Re: Guardando los valores de R-Square del ajuste de spline de suavizadoGracias por la respuesta Jim. El ejemplo que diste ayuda un poco, pero no funciona exactamente igual para un Fit Spline (). ¿Cuál es el problema con la sintaxis a continuación?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
biv = Bivariate(
Y( :NPN1 ),
X( :PNP1 ),
Fit Spline( 100000, {Line Color( {204, 121, 41} )}, {Save Predicteds})
);
// Offset into the report object and get the RSquare value
RSquare = Num(Report(biv)["Smoothing Spline Fit, lambda=100000"][numberbox(1)]<<GET text=""></GET>
El error implica un problema con la caja de números (1).
Re: Guardando los valores de R-Square del ajuste de spline de suavizadoTodos los datos de visualización en una tabla de salida de una plataforma JMP están disponibles para JSL. Aquí hay un ejemplo simple que recupera el valor de RSquare de Smoother
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
biv = Bivariate(
Y( :NPN1 ),
X( :PNP1 ),
Kernel Smoother( 1, 1, 0.343642611683849, 0 )
);
// Offset into the report object and get the RSquare value
RSquare = Num(Report(biv)["Local Smoother"][numberbox(1)]<<GET text=""></GET>