Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich arbeite in einer sehr großen JMP-Tabelle. Ich möchte einen Wert aus einer externen zweidimensionalen kleinen Tabelle auswählen und diesen Wert in eine neue Spalte einfügen. Um den Wert aus der externen Tabelle auszuwählen, möchte ich Werte in jeder Zeile der beiden Spalten in der aktuellen JMP-Tabelle als die beiden Indizes der externen kleinen Tabelle verwenden. Kann mir jemand dabei helfen?
Ich habe zwei Dateien. Die Big_data_matrix enthält die erste Spalte, die nur Werte zwischen 1 und 24 haben kann. Spalte 2 ist leer. Values.jmp ist eine kleine Tabelle, die eine Spalte mit 24 Einträgen enthält. Für jede Zeile in Big_data_matrix möchte ich den Wert in Spalte 1 lesen, und wenn er gleich k ist, dann möchte ich den k-ten Eintrag (k=1:24) aus den Werten auswählen. jmp-Tabelle und geben Sie sie in die zweite Spalte von Big_data_matrix ein.
Meine ursprüngliche Big_data_matrix ist sehr groß (>1 Mio. Zeilen) und ich muss dies für viele verschiedene Big_data_matrix-Datentabellen tun.
Dies ist in JSL wahrscheinlich einfach zu bewerkstelligen, aber ich habe keine Erfahrung mit JSL und würde dies, wenn möglich, gerne in JMP tun.
Danke.
Die Nachricht wurde bearbeitet von: Ranjan Sonalkar
Betreff: Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?MS
Danke. Einfache Lösung und funktioniert gut.
Betreff: Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?Mit der UPDATE-Anweisung können Sie die große Tabelle mit Werten aus der kleinen Tabelle aktualisieren.Hier ist ein JSL-Beispiel:
dt_big = Neuer Tisch ( „Big_data_matrix“ ,
Zeilen hinzufügen ( 2400 ) ,
Neue Spalte ( "Erste Spalte" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) )
) ;
dt_val = Neuer Tisch ( "Werte" , Zeilen hinzufügen ( 24 ) ,
Neue Spalte ( „Spalte 1“ , Charakter , Nominell ,
Werte festlegen ( { „AA“ , „BB“ , „CC“ , „DD“ , „EE“ , „FF“ , „GG“ , „HH“ , „II“ , „JJ“ , „KK“ , "LL" ,
„MM“ , „NN“ , „OO“ , „PP“ , „QQ“ , „RR“ , „SS“ , „TT“ , „UU“ , „VV“ , „WW“ , „XX“ } ) ) ,
Neue Spalte ( "Zeilennummer" , Numerisch , Kontinuierlich , Format ( "Am besten" , 12 ) ,
Werte festlegen ( [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 ,
21 , 22 , 23 , 24 ] ) )
) ;
// Mit zufälligen ganzen Zahlen von 1-24 füllen
für ( ich = 1 , ich <= 2400 , ich ++,
Spalte ( dt_big , "Erste Spalte" )[ ich ] = runden ( zufällige Uniform ( 1 , 24 ) , 0 ) ;
) ;
dt_big << Aktualisieren (
Mit ( dt_val ) ,
Spalten anpassen ( : Erste Spalte = : Zeilennummer ) ,
Fügen Sie Spalten aus der Aktualisierungstabelle hinzu ( : Spalte 1 )
) ;
Betreff: Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?Ok, die Indizierung ist eindimensionalI. Dann schlage ich vor, dass Sie Update verwenden.
Fügen Sie zunächst eine zweite Spalte zu Values.jmp mit den Werten 1 bis 24 hinzu. Aktivieren Sie dann die große Tabelle und wählen Sie im Tabellenmenü „Aktualisieren“. Wählen Sie im Listenfeld Values.jmp aus und aktivieren Sie „Spalten anpassen“. Dann gleichen Sie die erste Spalte in der großen Tabelle mit der neu erstellten ID-Spalte in Values.jmp ab.
Anschließend wird der großen Tabelle eine neue Spalte mit Werten hinzugefügt, die der Zahl in Spalte 1 entsprechen (wenn die leere Spalte 2 in der großen Tabelle denselben Namen erhält wie die Wertespalte in der kleinen Tabelle, wird diese Spalte anstelle von a gefüllt neue Spalte).
Und ja, es könnte leicht per Skript erstellt werden.
Betreff: Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?Ich habe zwei Dateien. Die Big_data_matrix enthält die erste Spalte, die nur Werte zwischen 1 und 24 haben kann. Spalte 2 ist leer. Values.jmp ist eine kleine Tabelle, die eine Spalte mit 24 Einträgen enthält. Für jede Zeile in Big_data_matrix möchte ich den Wert in Spalte 1 lesen, und wenn er gleich k ist, dann möchte ich den k-ten Eintrag (k=1:24) aus den Werten auswählen. jmp-Tabelle und geben Sie sie in die zweite Spalte von Big_data_matrix ein.
Meine ursprüngliche Big_data_matrix ist sehr groß (>1 Mio. Zeilen) und ich muss dies für viele verschiedene Big_data_matrix-Datentabellen tun.
Dies ist in JSL wahrscheinlich einfach zu bewerkstelligen, aber ich habe keine Erfahrung mit JSL und würde dies, wenn möglich, gerne in JMP tun.
Danke.
Betreff: Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?Hier ist ein Beispiel für die Verwendung von jsl zum Abrufen von Werten aus anderen Tabellen basierend auf 2D-Koordinaten in der Haupttabelle.
//Beispieltabellen
dt1 = Neuer Tisch ( "Großer Tisch" ,
Zeilen hinzufügen ( 10 ) ,
Neue Spalte ( „row_index“ , Werte festlegen ([ 1 , 2 , 3 , 4 , 5 , 1 , 2 , 3 , 4 , 5 ])) ,
Neue Spalte ( „column_index“ , Werte festlegen ([ 1 , 2 , 3 , 1 , 2 , 3 , 1 , 2 , 3 , 1 ]))
) ;
dt2 = Neuer Tisch ( "Kleiner Tisch" ,
Zeilen hinzufügen ( 5 ) ,
Neue Spalte ( „Spalte 1“ , Werte festlegen ([ 1 , 2 , 3 , 4 , 5 ])) ,
Neue Spalte ( „Spalte 2“ , Werte festlegen ([ 6 , 7 , 8 , 9 , 10 ])) ,
Neue Spalte ( „Spalte 3“ , Werte festlegen ([ 11 , 12 , 13 , 14 , 15 ]))
) ;
// Neue Spaltenwerte aus kleinen Tabellen hinzufügen, die den beiden Indexspalten entsprechen
dt1 << Neue Spalte ( "Daten" , numerisch ) ;
Für jede Reihe ( dt1 : Daten = Spalte ( dt2 , Bewertung ( : Spaltenindex []))[ : row_index ]) ;
Betreff: Wie kann ich einen Wert aus einer externen Tabelle auswählen, indem ich Werte in zwei Spalten in der JMP-Tabelle indiziere?Hallo,
Könnten Sie ein kleines Beispiel Ihrer Tabellen und der gewünschten Ausgabe bereitstellen?Das sollte helfen, klarzustellen, was Sie erreichen möchten.
Danke.