Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorEstoy intentando recrear el comportamiento interno de JMP: al hacer una tabla combinada en un informe de distribución, la tabla resultante mostrará el valor por en la primera columna. Cuando creo mi propia estructura de tabla anidada, no obtengo esta primera columna en la tabla de datos combinada resultante. ¿Cómo puedo definir la estructura de mi ventana de tal manera que genere dos tablas de datos combinadas idénticas?
Vea la diferencia ejecutando este script de ejemplo:
/* Open a sample data table */
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
/* Generate the Distribution with a By variable */
dist = dt << Distribution( Continuous Distribution( Column( :height ) ), By( :sex ) );
/* Create the combined data table of Summary Statistics */
Report( dist[1] )["Summary Statistics"][Table Box( 1 )] << Make Combined Data Table;
TestWindow = new window("Test with multiple tables",main = v list box());
main << Append(
Outline Box( "Distributions sex=F",
Outline Box( "height",
Outline Box( "Summary Statistics",
Table Box(
String Col Box("",
{"Mean", "Std Dev", "Std Err Mean", "Upper 95% Mean", "Lower 95% Mean", "N", "Sum", "Variance", "CV", "N Missing"}
),
Number Col Box("",
{60.8888888888889, 3.61189031311679, 0.851330711102296, 62.6850396850604, 59.0927380927173, 18, 1096, 13.0457516339869,
5.93193664562977, 0}
)
)
)
)
)
);
main << Append(
Outline Box( "Distributions sex=M",
Outline Box( "height",
Outline Box( "Summary Statistics",
Table Box(
String Col Box("",
{"Mean", "Std Dev", "Std Err Mean", "Upper 95% Mean", "Lower 95% Mean", "N", "Sum", "Variance", "CV", "N Missing"}
),
Number Col Box("",
{63.9090909090909, 4.3084533840777, 0.918565347870119, 65.8193521238087,
61.9988296943731, 22, 1406, 18.5627705627705, 6.7415344558826, 0}
)
)
)
)
)
);
TestWindow["Summary Statistics"][Table Box( 1 )] << Make Combined Data Table;Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorPuede evitarlo creando una función para crear su tabla de datos combinada y configurar la función para que se ejecute como una secuencia de comandos del menú contextual para TableBox. Consulte a continuación para obtener más detalles. Tenga en cuenta que puede volver a agregar algunos de los otros elementos del menú contextual si los necesita (con un poco de trabajo) utilizando los equivalentes de mensajes JSL.
customMakeCombinedDataTable = Function({},
// Get a list of all of all invisible columns
collapsedCols = TestWindow <<XPATH></XPATH>

Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorHmm, el problema sigue siendo que si las personas hacen clic derecho -> crear una tabla de datos combinados en la ventana del informe, ninguno de estos funciona y me veo obligado a agregar una columna que no es más que el mismo valor repetido. Esperaba evitar eso.Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorLos TableBox generados por la plataforma JMP realizan un seguimiento de los grupos Por internamente, pero no es algo que pueda configurar usted mismo cuando utilice una ventana JMP personalizada.
¡No dudes en mantenerlo abierto en caso de que me haya perdido algo!
Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorJustin, gracias por tus respuestas, ambas parecen funcionar y si nadie presenta una solución más simple, ¡definitivamente me has ayudado! Así que déjame dejar la pregunta abierta por un rato más y si a nadie se le ocurre una respuesta mejor, marcaré la tuya como respuesta.
Me parece que JMP hace algo más internamente (¿como establecer una propiedad de tabla que se analiza?) y espero que este truco esté expuesto a la interfaz de secuencias de comandos y pueda aplicarse aquí.
Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorHola @pauldeen ,
Hay dos enfoques que encontré para abordar este problema.
El primer enfoque es el más simple de los dos, pero requiere colocar el valor de Por variable como una columna en las tablas de estadísticas resumidas. En el siguiente ejemplo, vea la columna adicional "Sexo", que inicialmente está contraída pero se abre temporalmente para crear la tabla de datos combinados. Ver comentarios para más detalles.
TestWindow = new window("Test with multiple tables",main = v list box());
main << Append(
Outline Box( "Distributions sex=F",
Outline Box( "height",
Outline Box( "Summary Statistics",
Table Box(
String Col Box( "Sex", Repeat( {"F"}, 10 ), <<VISIBILITY></VISIBILITY>
Aquí está la tabla resultante usando este método:

El segundo método consiste en tomar la información Por valor de OutlineBox y concatenar las tablas. Este método no requiere ningún cambio en la configuración de su configuración existente de OutlineBox/Sumary Statistics, pero es un poco más complicado. Consulte los comentarios a continuación para obtener más detalles.
TestWindow = new window("Test with multiple tables",main = v list box());
main << Append(
Outline Box( "Distributions sex=F",
Outline Box( "height",
Outline Box( "Summary Statistics",
Table Box(
String Col Box("",
{"Mean", "Std Dev", "Std Err Mean", "Upper 95% Mean", "Lower 95% Mean", "N", "Sum", "Variance", "CV", "N Missing"}
),
Number Col Box("",
{60.8888888888889, 3.61189031311679, 0.851330711102296, 62.6850396850604, 59.0927380927173, 18, 1096, 13.0457516339869,
5.93193664562977, 0}
)
)
)
)
)
);
main << Append(
Outline Box( "Distributions sex=M",
Outline Box( "height",
Outline Box( "Summary Statistics",
Table Box(
String Col Box("",
{"Mean", "Std Dev", "Std Err Mean", "Upper 95% Mean", "Lower 95% Mean", "N", "Sum", "Variance", "CV", "N Missing"}
),
Number Col Box("",
{63.9090909090909, 4.3084533840777, 0.918565347870119, 65.8193521238087,
61.9988296943731, 22, 1406, 18.5627705627705, 6.7415344558826, 0}
)
)
)
)
)
);
// get all of the tableboxes within a 'Summary Statistics' OutlineBox
tableBoxes = TestWindow << Xpath("//OutlineBox[text()='Summary Statistics']/TableBox");
//Create and insert each data table
dts = {};
For( i = 1, i <= N Items( tableBoxes ), i++,
tempDt = tableBoxes[i] << make into data table( "invisible" );
//set the name of the table to the title of the top outlinebox
tempDt << Set Name( (((tableBoxes[i] << Parent) << parent) << parent) << get title );
Insert Into( dts, tempDt );
);
// Concatenate the tables together, with a source column
dts[1] << Concatenate( Remove( dts, 1 ), Create source column );
// close all of the temporary tables
For( i = 1, i <= N Items( dts ), i++,
Close( dts[i] )
);
Aquí está la tabla resultante:

Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valor
Sólo con el código que publicaste, recibí la tabla de datos. ¿No es esto lo que esperabas?
Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorLamentablemente eso no es lo que quiero. Ya tengo la ventana combinada. Ahora quiero brindarles a mis clientes la posibilidad de crear una tabla de datos combinada útil a partir de ella.Re: Cómo configurar una ventana de informe para que la tabla de datos combinados se muestre por valorhttps://community.jmp.com/t5/Discussions/JSL-Combined-graphs-from-multiple-data-table-and-combined-into-a/mp/17215#M15690