Zwei Tabellen mit Table\Join und Table\Update abzugleichen, schlug fehl.Die Tabellen A, B und C sind beigefügt.
Tabelle A enthält 30 Einträge von Peter.
Tabelle B enthält 8.790 Einträge von Jane.
Tabelle C ist die korrekte, manuell erstellte Verknüpfungstabelle.
Ich möchte die Einträge von Peter und Jane abgleichen und eine Teilmenge erstellen, die nur "Standorte" in Tabelle A enthält, also Tabelle C.
Ich hatte Table\Join und Table\Update verwendet, aber die Ergebnisse waren nicht korrekt.
Wenn Sie beispielsweise Location=-216,161 verwenden, sollte die Ausgabe der verknüpften Tabelle wie folgt aussehen: ...
Standort Peter Jane
-216,161 RDL_Membran RDL_Membran
-216,161 RDL_Membran .
-216.161 Trümmer Trümmer
Automatisierung und SkripterstellungBetreff: Abgleich zweier Tabellen mit Table\Join und Table\Update fehlgeschlagenDie Verknüpfung/Aktualisierung funktioniert korrekt, da mehrere Übereinstimmungen vorliegen. Sie müssen höchstwahrscheinlich eine Wertbereinigungsfunktion hinzufügen, um diese „zusätzlichen“ Werte zu entfernen.

Betreff: Abgleich zweier Tabellen mit Table\Join und Table\Update fehlgeschlagenHallo Jarmo,
Ihre Ausgabe ist nicht korrekt. Für Location= -216,161 hat Peter 3 Ausgaben und Jane 2 Ausgaben. Das Ergebnis sollte wie unten dargestellt aussehen. Wie würden Sie ein JSL-Skript schreiben, um dies zu automatisieren?
Standort Peter Jane
-216,161 RDL_Membran RDL_Membran
-216,161 RDL_Membran .
-216.161 Trümmer Trümmer
Betreff: Abgleich zweier Tabellen mit Table\Join und Table\Update fehlgeschlagenDiese Ausgabe ist für einen Join/Update-Vorgang korrekt, entspricht aber möglicherweise nicht Ihren Erwartungen.
1. Erstelle eine Kopie der Spalte „Jane“ in Tabelle B.
2. Verwenden Sie diese neue Spalte (in meinem Fall Spalte 3) als übereinstimmende Spalte für die Aktualisierung.

3. Wählen Sie die Spalten „Standort“ und „Jane“ aus, dann „Zeilen“ > „Zeilenauswahl“ > „Duplikate löschen“.
4. Markieren Sie nur die Spalte „Jane“ (klicken Sie auf die Spaltenüberschrift (manchmal müssen Sie die Alt-Taste gedrückt halten)) und löschen Sie die Werte (drücken Sie die Entf-Taste).


Betreff: Abgleich zweier Tabellen mit Table\Join und Table\Update fehlgeschlagenIch möchte das oben Genannte mit JSL umsetzen. Außerdem wird sich der Datensatz ändern, und es wird vorkommen, dass Janes Spalte doppelt vorhanden ist, was aber kein Problem darstellt.
Betreff: Abgleich zweier Tabellen mit Table\Join und Table\Update fehlgeschlagenIch würde das höchstwahrscheinlich als Workflow umsetzen. Natürlich können Sie auch direkt JSL verwenden, falls Sie ein entsprechendes Skript schreiben können.
Betreff: Abgleich zweier Tabellen mit Table\Join und Table\Update fehlgeschlagenWürden Sie zunächst die Formatierung Ihrer Daten in Betracht ziehen? Erfahrungsgemäß ist es oft einfacher, die Daten in ein analysefreundlicheres Format umzuwandeln, anstatt komplexe Skripte zu verwenden, um die Analyse an Ihr Datenformat anzupassen. Mehrere Zeilen für einen bestimmten Standort (hohes Format) funktionieren in vielen Fällen, werden aber problematisch, wenn auch doppelte Beobachtungen vorhanden sind (d. h. mehrere Zeilen, die vollständig identisch sind). JMP weiß nicht immer, wie mit solchen Duplikaten umzugehen ist, und liefert daher beim Verknüpfen möglicherweise nicht die erwarteten Ergebnisse.
Zum Beispiel: Würden Sie eine Änderung des Formats von Hochformat auf Breitformat in Betracht ziehen? So etwas ist beispielsweise bei Inspektions-/Testdaten der Halbleiterindustrie üblich, wenn es mehrere Fehlerkategorien oder Ausbeuteränge gibt:
Mehr anzeigen...
Local( {obj},
obj = Data Table( "Table A" ) << Tabulate(
Add Table(
Column Table(
Grouping Columns( :Peter ),
Add Aggregate Statistics( :Peter )
),
Row Table( Grouping Columns( :Location ) )
)
);
obj << Make Into Data Table;
obj << Close Window;
);
Das Ergebnis ist eine Tabelle wie diese:

Das Zusammenführen von Tabellen in diesem Format für beide Operatoren wäre wesentlich einfacher.
Eine weitere Option, die Sie in Betracht ziehen könnten, ist die Modellierung mit mehreren Antwortvariablen. Zum Beispiel:
Mehr anzeigen...
dt=Data Table( "Table A" ) << Split(
Split By( :Peter ),
Split( :Peter ),
Group( :Location ),
Output Table( "Split of Table A by Peter" ),
Sort by Column Property
);
// New formula column: Concatenate[BL_Twin,Debris,Good_FS,Probemarks,RDL_Membrane,RDL_SpotsDark]
dt <<
New Formula Column(
Operation( Category( "Character" ), "Concatenate with Comma" ),
Columns(
:BL_Twin, :Debris, :Good_FS, :Probemarks, :RDL_Membrane, :RDL_SpotsDark
)
) << Run Formulas;
dt:"Concatenate[BL_Twin,Debris,Good_FS,Probemarks,RDL_Membrane,RDL_SpotsDark]"n <<
Set Modeling Type( "Multiple Response" );
Das sieht folgendermaßen aus:
