Aggiornamento di una parte di una tabella dati per riga e colonna utilizzando JSLCiao, scusa, sto cercando su Google da ore ormai e non so proprio cosa fare. Non so come formulare la mia domanda anche se farò del mio meglio, è solo, davvero esasperante e mi viene in mente ora, finalmente, come una cosa così semplice possa essere così complicata. Vedo che JMP è inteso per alcune cose e non per altre, dopotutto. In Python questo sarebbe molto facile per me. Ma immagino che sia tutta una questione di esperienza. Non aggiungere la beffa al danno.
Desidero sostituire un sottoinsieme della mia tabella dati con nuovi dati. Ho le righe di destinazione e la colonna di destinazione, la vecchia tabella ei nuovi dati. Qual è la sintassi per farlo?
Grazie.
Michael
Tabella datiScriptingOggetto: aggiornamento di una parte di una tabella dati per riga e colonna utilizzando JSLEcco 3 modi per aggiornare i dati in una tabella, con i valori di un'altra tabella.
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: aggiornare parte di una tabella dati per riga e colonna utilizzando JSLciao Michele,
Ho allegato uno script che ho scritto molte lune fa per illustrare alcune sintassi comunemente usate per le operazioni con le tabelle. Quando lo controlli, accendi il registro in modo da poter vedere i risultati ed eseguire ogni riga una alla volta. Se vai fuori servizio, potrebbe non funzionare correttamente poiché a volte faccio cose che si basano su codice eseguito in precedenza.
Nel tuo caso specifico, puoi sostituire il contenuto della tabella usando il pedice... dai un'occhiata a questo script, che esegue le cose riga per riga
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] = .;