Hola a todos,
He escrito un script en el que crearé varias columnas en la tabla JMP (por ejemplo, tabla-1) en función de algunos cálculos. Ahora quiero completar algunas filas y columnas seleccionadas de la Tabla 1 en otra tabla JMP (por ejemplo, tabla 2). Necesito ayuda para completar la segunda tabla con filas y columnas seleccionadas.
Sugiera amablemente.
Saludos,
Dilip
Aquí hay un par de formas de hacer lo que estás pidiendo.El primer método, usar la plataforma de actualización, es mucho más eficiente que la actualización de celda a celda, pero ambos funcionan bien y cada uno tiene su lugar en el que desea utilizar cada técnica.
Names Default To Here( 1 );
dt1 = Open( "$SAMPLE_DATA/big class.jmp" );
dt2 = Open( "$SAMPLE_DATA/big class families.jmp" );
// Add a new columns
dt1 << New Column( "Height, Weight ratio", formula( :weight / :height ) );
dt1 << New Column( "Age, Height ratio", formula( :height / :Age ) );
// Add the Height, Weight ratio to the dt2 data table, for only the
// females, using a simple subset and a join
dt1 << select where( :sex == "F" );
dtSubset = dt1 << subset(
private,
selected rows( 1 ),
columns( {"name", "Height, Weight ratio"} )
);
dt2 << Update( With( dtSubset ), Match Columns( :name = :name ) );
Close( dtSubset, nosave );
// Add the Age, Height ratio to the dt2 data table for only the
// 13 year olds, using cell by cell processing
dt2 << New Column( "Age, Height ratio" );
For( i = 1, i <= N Rows( dt1 ), i++,
If( dt1:age[i] == 13,
foundRow = dt2 << get rows where( dt1:name[i] == dt2:name & dt2:age == 13 );
If( N Rows( foundRow ) == 1,
theRow = foundRow[1];
dt2:Name( "Age, Height ratio" )[theRow] = dt1:Name( "Age, Height ratio" )[i];
);
)
);
Además, existen otros métodos que se pueden utilizar.Le sugiero que lea la Guía de secuencias de comandos para tener una idea de la variedad de opciones disponibles.
Ayuda==>Libros==>Guía de secuencias de comandos