Actualizar parte de una tabla de datos por fila y columna usando JSLHola, lo siento, he estado buscando en Google durante horas y no sé qué hacer. No sé cómo formular mi pregunta, aunque haré todo lo posible, es realmente exasperante y me llega ahora, finalmente, cómo una cosa tan simple puede ser tan complicada. Veo que JMP está destinado a algunas cosas y no a otras, después de todo. En Python esto sería muy fácil para mí. Pero supongo que se trata de experiencia. No para colmo de males.
Deseo reemplazar un subconjunto de mi tabla de datos con datos nuevos. Tengo las filas y la columna de destino y la tabla anterior y los datos nuevos. ¿Cuál es la sintaxis para hacer esto?
Gracias.
Miguel
Tabla de datosScriptingRe: Actualizar parte de una tabla de datos por fila y columna usando JSLAquí hay 3 formas de actualizar datos en una tabla, con valores de otra tabla.
Names Default To Here( 1 );
// Open Data Table: big class.jmp
// → Data Table( "big class" )
Open( "$SAMPLE_DATA/big class.jmp" );
// Create a table with values to be input
// into the big class table
New Table( "Using Update",
New Column( "Name", character, values( {"JANE", "TIM", "ALICE"} ) ),
New Column( "Height", values( {58, 69, 64} ) ),
New Column( "Weight", values( {88, 100, 120} ) )
);
// Wait for a short time to be able to see the two
// data tables before combining them
Wait( 5 );
// Update data tables
Data Table( "big class" ) << Update( With( Data Table( "Using Update" ) ), Match Columns( :name = :Name ) );
// Update a block of data into the data table
// Create a table to get values from
New Table( "Just Data",
New Column( "A", values( {100, 101, 102, 103} ) ),
New Column( "B", values( {90, 91, 92, 93} ) )
);
// Wait for a short time to be able to see the two
// data tables before combining them
Wait( 5 );
dt = Data Table( "big class" );
dt2 = Data Table( "Just Data" );
dt[3 :: 6, 4 :: 5] = dt2[1 :: 4, 1 :: 2];
// One last simple way to move data
dt:age[2] = dt2:a[4];Re: Actualizar parte de una tabla de datos por fila y columna usando JSLHola Michael,
Adjunté un script que escribí hace muchas lunas para ilustrar algunas de las sintaxis de uso común para las operaciones de tablas. Cuando lo esté revisando, encienda su registro para que pueda ver los resultados y ejecute cada línea de una en una. Si se estropea, es posible que no funcione correctamente, ya que a veces hago cosas que dependen del código ejecutado previamente.
En su caso específico, puede reemplazar el contenido de la tabla usando subíndices ... eche un vistazo a este script, ejecutando las cosas línea por línea
names default to here(1);
//create a 10x10 table of random integers between 1 and 20
dt = As Table( J( 10, 10, Random Integer( 1, 20 ) ) );
//replace column 1 with fibonacci numbers... note 0th row means ALL rows
//note that ` is the transpose operator.
dt[0, 1] = (Round( 1 / Sqrt( 5 ) * ((1 + Sqrt( 5 )) / 2) ^ (1 :: 10) ))` ;
//replace a subbloc of the table with numbers 81-100 in a 4x5 shape
dt[3::6, 4::8] = shape(81::100, 4);
//set a subbloc to all zeros
dt[8::10, 2::4] = 0;
//store a cell's value in a variable
x = dt[2,3];
//store a subbloc in a matrix
mat = dt[4::6, 0];
//set the whole table to missing
dt[0,0] = .;