Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Sto lavorando in una tabella JMP molto grande. Vorrei selezionare un valore da una piccola tabella bidimensionale esterna e inserire quel valore in una nuova colonna. Per selezionare il valore dalla tabella esterna, vorrei utilizzare i valori in ciascuna riga delle due colonne nella tabella JMP corrente come i due pedici della tabella piccola esterna. Qualcuno può aiutarmi a fare questo?
Ho due file. Big_data_matrix contiene la prima colonna che può avere solo valori compresi tra 1 e 24. La colonna 2 è vuota. Values.jmp è una piccola tabella che contiene una colonna con 24 voci. Per ogni riga in Big_data_matrix vorrei leggere il valore nella colonna 1 e, se è uguale a k, vorrei scegliere la k-esima voce (k=1:24) dai valori. jmp e inseriscila nella seconda colonna di Big_data_matrix.
Il mio Big_data_matrix originale è molto grande (> 1 milione di righe) e devo farlo per molte diverse tabelle di dati Big_data_matrix.
Probabilmente è facile da fare in JSL, ma non ho esperienza con JSL e mi piacerebbe farlo in JMP, se possibile.
Grazie.
Il messaggio è stato modificato da: Ranjan Sonalkar
Ri: Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?SM
Grazie. Soluzione semplice e funziona bene.
Ri: Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?È possibile utilizzare l'istruzione UPDATE per aggiornare la tabella grande con i valori della tabella piccola.Ecco un esempio JSL:
dt_big = Nuova tabella ( "Big_data_matrix" ,
Aggiungi righe ( 2400 ) ,
Nuova colonna ( "Prima colonna" , Numerico , Continuo , Formato ( "Migliore" , 12 ) )
) ;
dt_val = Nuova tabella ( "Valori" , Aggiungi righe ( 24 ) ,
Nuova colonna ( "Colonna 1" , Carattere , Nominale ,
Imposta valori ( { "AA" , "BB" , "CC" , "DD" , "EE" , "FF" , "GG" , "HH" , "II" , "JJ" , "KK" , "LL" ,
"MM" , "NN" , "OO" , "PP" , "QQ" , "RR" , "SS" , "TT" , "UU" , "VV" , "WW" , "XX" } ) ) ,
Nuova colonna ( "Numero di riga" , Numerico , Continuo , Formato ( "Migliore" , 12 ) ,
Imposta valori ( [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 ,
21 , 22 , 23 , 24 ] ) )
) ;
// Riempi con numeri interi casuali da 1 a 24
per ( io = 1 , io <= 2400 , io ++,
colonna ( dt_big , "Prima colonna" )[ io ] = girare ( uniforme casuale ( 1 , 24 ) , 0 ) ;
) ;
dt_big << Aggiornamento (
Con ( dt_val ) ,
Corrispondenza colonne ( : Prima Colonna = : Numero di riga ) ,
Aggiungi colonne dalla tabella Aggiorna ( : Colonna 1 )
) ;
Ri: Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?Ok, l'indicizzazione è unidimensionaleI. Quindi ti suggerisco di utilizzare Update.
Innanzitutto, aggiungi una seconda colonna a Values.jmp, con i valori da 1 a 24. Quindi, attiva la tabella grande e seleziona Aggiorna nel menu tabelle. Selezionare Values.jmp nella casella di riepilogo e selezionare "Colonne corrispondenti". Quindi abbini la prima colonna nella tabella grande alla colonna ID appena creata in Values.jmp.
Una nuova colonna con valori corrispondenti al numero nella colonna 1 viene quindi aggiunta alla tabella grande (se alla colonna vuota 2 nella tabella grande viene assegnato lo stesso nome della colonna dei valori nella tabella piccola, questa colonna verrà riempita invece di una nuova colonna).
E sì, potrebbe essere facilmente sceneggiato.
Ri: Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?Ho due file. Big_data_matrix contiene la prima colonna che può avere solo valori compresi tra 1 e 24. La colonna 2 è vuota. Values.jmp è una piccola tabella che contiene una colonna con 24 voci. Per ogni riga in Big_data_matrix vorrei leggere il valore nella colonna 1 e, se è uguale a k, vorrei scegliere la k-esima voce (k=1:24) dai valori. jmp e inseriscila nella seconda colonna di Big_data_matrix.
Il mio Big_data_matrix originale è molto grande (> 1 milione di righe) e devo farlo per molte diverse tabelle di dati Big_data_matrix.
Probabilmente è facile da fare in JSL, ma non ho esperienza con JSL e mi piacerebbe farlo in JMP, se possibile.
Grazie.
Ri: Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?Ecco un esempio su come utilizzare jsl per ottenere valori da altre tabelle in base alle coordinate 2D nella tabella principale.
//Tabelle di esempio
dt1 = Nuova tabella ( "Tavolo grande" ,
Aggiungi righe ( 10 ) ,
Nuova colonna ( "indice_riga" , Imposta valori ([ 1 , 2 , 3 , 4 , 5 , 1 , 2 , 3 , 4 , 5 ])) ,
Nuova colonna ( "indice_colonna" , Imposta valori ([ 1 , 2 , 3 , 1 , 2 , 3 , 1 , 2 , 3 , 1 ]))
) ;
dt2 = Nuova tabella ( "Tavolino" ,
Aggiungi righe ( 5 ) ,
Nuova colonna ( "Colonna 1" , Imposta valori ([ 1 , 2 , 3 , 4 , 5 ])) ,
Nuova colonna ( "Colonna 2" , Imposta valori ([ 6 , 7 , 8 , 9 , 10 ])) ,
Nuova colonna ( "Colonna 3" , Imposta valori ([ 11 , 12 , 13 , 14 , 15 ]))
) ;
// Aggiunge nuovi valori di colonna da piccole tabelle corrispondenti alle due colonne dell'indice
dt1 << Nuova colonna ( "dati" , numerico ) ;
Per ogni riga ( dt1 : dati = Colonna ( dt2 , Val ( : indice_colonna []))[ : indice_riga ]) ;
Ri: Come posso selezionare un valore da una tabella esterna indicizzando i valori in due colonne nella tabella JMP?Ciao,
Potresti fornire un piccolo esempio delle tue tabelle e dell'output desiderato?Ciò dovrebbe aiutare a chiarire ciò che stai cercando di realizzare.
Grazie.