Promedio de ejecución por series de datos usando For Loop y el mismo script en varias columnasHola, necesito obtener el promedio de todas las columnas y ordenarlo por el encabezado de la columna. Los datos se adjuntan en un archivo jmp que se importa desde Excel! ¡Gracias!
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasLa hoja de Excel que estoy usando y recibiendo tiene seis pestañas y quiero agrupar todos los datos en una sola revista para poder enviarlos o hacer más análisis. ¡Gracias!
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnas @ tylerram123 ,
¿Puedes ayudarme a entender para qué necesitas este diario? Prueba este ejemplo. Lo probé y esto funcionará.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
MyJrn = dt << journal;
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasTodavía no puedo publicar en un diario. Estoy intentando esto ahora, pero no tengo suerte.
jrn = Nueva ventana ( "Informes" , << diario ) ;
jrn << Adjuntar ( Cuadro de lista H ( ( dtFinal << Informe ) ) ) ;
jrn << Guardar diario (( "C: \! Destino! \ Output.jrn" ) ) ;
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasA continuación se muestra un script que crea la tabla de salida de resumen que indicó que era lo que quería. La secuencia de comandos va desde la tabla de datos JMP que proporcionó hasta su finalización. Aproximadamente el 80% de la secuencia de comandos se creó ejecutando los pasos de forma interactiva en JMP, y luego solo JMP guardó la secuencia de comandos que usó para el procesamiento interactivo en una ventana de secuencia de comandos. Todos los pasos y funciones utilizados en el script están documentados en la Guía de Scripting y en el Índice de Scripting.
Ayuda ==> Libros ==> Guía de scripting
Ayuda ==> Guía de scripting
Names Default To Here( 1 );
dt = Current Data Table();
// Correct the data table using the JMP table imported from the Excel file
For( i = 2, i <= N Cols( dt ), i++,
Column( dt, i ) << set name(
Word( 1, Column( dt, i ) << get name, " " ) || " " || Column( dt, i )[1]
)
);
dt << delete rows( 1 );
For( i = 2, i <= N Cols( dt ), i++,
Column( dt, i ) << data type( numeric ) << modeling type( continuous )
);
// Change the name of the first column to H(Oe)
Column( dt, 1 ) << set name( "H(Oe)" );
// Create a list of all numeric column names
colNamesList = dt << get column names( numeric );
// Summarize the data
dtSum = dt << Summary(
Mean( Eval( colNamesList ) ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "column" ),
Link to original data table( 0 )
);
// Create final table and sort it in alphabetical order
// First delete the unneeded column N Rows
dtSum << delete columns( "N Rows" );
dtFinal = dtSum << Transpose(
columns( Eval( colNamesList ) ),
Label column name( "Column" ),
Output Table( "Summary " )
);
// Change the name of the "Row 1" column to "Mean"
dtFinal:Row 1 << set name( "Mean" );
// Sort the data table
dtFinal = dtFinal << sort( by( Column ), order( Ascending ), Replace Table( 1 ) );
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasQuería scripts JMP. Perdón por la ambigüedad!
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasPuedes hacerlo fácilmente haciendo lo siguiente:
dt << Journal();
// in your case dt_Method1
Sin embargo, le aconsejaría que haga todas sus solicitudes de una vez o como preguntas separadas.
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasPara que quede claro ... ¿desea que la solución esté en el lenguaje SAS o en el lenguaje de script JMP? Tanto el Sistema SAS como el JMP son productos ofrecidos por el Instituto SAS, pero tienen una sintaxis muy diferente.Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnas¿Cómo exportaría eso a un diario?
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnas @ tylerram123 ,
Algo como esto
Clear Log() ; Clear Globals();
// Script to Open File
FilePath = "C:\RC23.xlsx"; // Edit to have your custom File Path
dt_Input = Open(
FilePath,
Worksheets( "RC23" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 2 ),
Data Starts on Row( 3 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
// Method 1
dt_Method1 = dt_Input << Summary(
Mean( :Column 1 ),
Mean( :Ic 2 ),
Mean( :RnN 2 ),
Mean( :RnP 2 ),
Mean( :Rn 2 ),
Mean( :IcN 3 ),
Mean( :IcP 3 ),
Mean( :Ic 3 ),
Mean( :RnN 3 ),
Mean( :RnP 3 ),
Mean( :Rn 3 ),
Mean( :IcN 4 ),
Mean( :IcP 4 ),
Mean( :Ic 4 ),
Mean( :RnN 4 ),
Mean( :RnP 4 ),
Mean( :Rn 4 ),
Mean( :IcN 5 ),
Mean( :IcP 5 ),
Mean( :Ic 5 ),
Mean( :RnN 5 ),
Mean( :RnP 5 ),
Mean( :Rn 5 ),
Mean( :IcN 6 ),
Mean( :IcP 6 ),
Mean( :Ic 6 ),
Mean( :RnN 6 ),
Mean( :RnP 6 ),
Mean( :Rn 6 ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "stat of column" )
);
// Method 2
dt_Method2 = (dt_Input << Tabulate(
Add Table(
Row Table(
Analysis Columns(
:Ic 2,
:RnN 2,
:RnP 2,
:Rn 2,
:IcN 3,
:IcP 3,
:Ic 3,
:RnN 3,
:RnP 3,
:Rn 3,
:IcN 4,
:IcP 4,
:Ic 4,
:RnN 4,
:RnP 4,
:Rn 4,
:IcN 5,
:IcP 5,
:Ic 5,
:RnN 5,
:RnP 5,
:Rn 5,
:IcN 6,
:IcP 6,
:Ic 6,
:RnN 6,
:RnP 6,
:Rn 6
),
Statistics( Mean )
)
)
)) << Make Into Data Table;Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnasLa primera foto es lo que estoy buscando. Tiene razón, por alguna razón no se colocó en el encabezado de la columna de la Columna 1, que debería ser H (Oe). ¿Sabes cómo hacer lo que hiciste para la primera imagen usando scripting SAS? ¡Gracias de nuevo por la ayuda!
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnas¿Hay una manera de hacer esto por secuencias de comandos?
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnas¿Es este el resultado que quieres?

No podria decir. El archivo de Excel fue ingresado incorrectamente si el resultado anterior es lo que desea. El Asistente de importación de Excel o el complemento JMP para Excel le permitirá indicar en qué fila están los encabezados de columna y en qué fila comienzan los datos. O bien, puede cortar y pegar los datos de Excel en JMP. Pero la forma en que importó los datos colocó lo que supongo que fue la segunda línea del encabezado de la columna como la primera fila de los datos.
El resultado de esto, fue para que JMP leyera sus datos, tenía que asumir que todas las columnas, excepto la primera columna contenían un valor no numérico, y por lo tanto la columna había sido leída como una columna numérica. La tabla de datos JMP es una estructura de tabla de análisis, no una estructura basada en celdas. Todos los datos en una celda determinada deben ser del mismo tipo ... para sus datos, ya sea de carácter o numérico.
Por lo tanto, lo primero que debe hacer es corregir la importación de sus datos.
Si usó el complemento JMP Excel, use el ícono de Preferencias en la parte superior de la pantalla para configurar las filas del encabezado.
Si está abriendo el archivo de Excel desde un
Archivo ==> Abrir
en JMP, haga clic en el archivo de Excel que desea abrir, y luego vaya a la flecha hacia abajo junto al botón "Abrir" en la ventana, y seleccione "Usar Asistente de Excel"
Lo guiará a través de la importación adecuada de su archivo de Excel.
Una vez hecho esto, es una cuestión simple de usar la plataforma de tabla de resumen
Re: Ejecución de promedios por series de datos usando For Loop y el mismo script en varias columnas @ tylerram123 ,
Cuando importó los datos, sería útil que hiciera la primera fila que tiene como nombre de columna. Si eso sucede, entonces puedes usar la función Tabular:
Puede usar la función de arrastrar y soltar para calcular diferentes estadísticas como se muestra. En cuanto a dónde se encuentra tabular, eso se muestra en la siguiente captura de pantalla:

