?> alJoin - WeAreCAS
activeLearn

alJoin

Beschreibung

Die Aktion `alJoin` im Aktionssatz `activeLearn` wird verwendet, um zwei Tabellen basierend auf einer gemeinsamen Identifikatorspalte zu verbinden. Dies ist ein grundlegender Schritt im aktiven Lernen, bei dem typischerweise eine Hauptdatentabelle mit einer Annotationstabelle zusammengeführt wird, die von Benutzern bereitgestellte Labels enthält. Die Aktion unterstützt verschiedene Arten von Joins (INNER, LEFT, RIGHT, FULL, APPEND), um Flexibilität bei der Kombination von beschrifteten und unbeschrifteten Daten zu bieten. Dieser Prozess ist entscheidend für die Vorbereitung von Trainingsdaten für nachfolgende Iterationen des maschinellen Lernmodells.

activeLearn.alJoin { annotatedTable={...}, casOut={...}, id='string', joinType='APPEND' | 'FULL' | 'INNER' | 'LEFT' | 'RIGHT', logLevel=64-bit-integer, table={...} };
Einstellungen
ParameterBeschreibung
annotatedTableGibt den Namen einer In-Memory-Tabelle an, die die Annotationsdaten für eine Join-Operation enthält.
casOutGibt den Namen der neuen Tabelle an, die die Ergebnisse der verbundenen Tabelle enthält.
idGibt eine Bezeichnerspalte an, die zum Verbinden der Datentabelle und der Annotationstabelle verwendet wird.
joinTypeGibt an, wie Tabellen verbunden werden. Die Auswahlmöglichkeiten sind APPEND, FULL, INNER, LEFT und RIGHT.
logLevelGibt die Berichtsebene für Fortschrittsnachrichten an, die an den Client gesendet werden. Die Standardebene 0 bedeutet, dass keine Nachrichten gesendet werden. Das Setzen des Wertes auf 1 sendet Start- und Endnachrichten. Das Setzen des Wertes auf 2 fügt die Iterationshistorie zur Client-Nachrichtenübermittlung hinzu.
tableGibt den Namen einer In-Memory-Tabelle an, die die Daten für eine Join-Operation enthält.
Datenaufbereitung
Datenerstellung

Erstellen von zwei Beispiel-CAS-Tabellen: 'my_data_table' als Hauptdatentabelle und 'my_annotation_table' als Annotationstabelle. Beide Tabellen enthalten eine 'id'-Spalte, die als Schlüssel für die Join-Operation dient.

data casuser.my_data_table;
  do id = 1 to 10;
    value = ranuni(0);
    output;
  end;
run;

data casuser.my_annotation_table;
  do id = 1 to 10 by 2;
    annotation = "annotated";
    output;
  end;
run;

Beispiele

Dieses Beispiel führt einen Left Join zwischen 'my_data_table' und 'my_annotation_table' durch, basierend auf der 'id'-Spalte. Das Ergebnis wird in der Tabelle 'aljoin_casout' gespeichert. Da 'LEFT' der Standard-Join-Typ ist, muss er nicht explizit angegeben werden.

SAS® / CAS-Code
Kopiert!
1PROC CAS;
2 activeLearn.alJoin /
3 TABLE={name='my_data_table'},
4 annotatedTable={name='my_annotation_table'},
5 id='id',
6 casOut={name='aljoin_casout', replace=true};
7RUN;
Ergebnis :
Die Ausgabetabelle 'aljoin_casout' wird erstellt. Sie enthält alle Zeilen aus 'my_data_table'. Für Zeilen, bei denen die 'id' in 'my_annotation_table' übereinstimmt, wird die Spalte 'annotation' mit dem Wert 'annotated' gefüllt. Für Zeilen ohne Übereinstimmung ist der Wert für 'annotation' fehlend.

Dieses Beispiel zeigt einen Inner Join, bei dem nur die Zeilen in die Ausgabetabelle 'aljoin_inner_casout' aufgenommen werden, bei denen die 'id' in beiden Tabellen, 'my_data_table' und 'my_annotation_table', übereinstimmt.

SAS® / CAS-Code
Kopiert!
1PROC CAS;
2 activeLearn.alJoin /
3 TABLE={name='my_data_table', caslib='casuser'},
4 annotatedTable={name='my_annotation_table', caslib='casuser'},
5 id='id',
6 joinType='INNER',
7 casOut={name='aljoin_inner_casout', caslib='casuser', replace=true};
8RUN;
Ergebnis :
Die Ausgabetabelle 'aljoin_inner_casout' wird erstellt und enthält nur die Zeilen mit den IDs 1, 3, 5, 7 und 9, da dies die einzigen IDs sind, die in beiden Quelltabellen vorhanden sind. Die Tabelle wird die Spalten 'id', 'value' und 'annotation' enthalten.

FAQ

Was ist der Zweck der alJoin-Aktion?
Welcher Parameter gibt die zu verbindende Annotationstabelle an?
Welcher Parameter wird verwendet, um die Ausgabetabelle für die Join-Ergebnisse festzulegen?
Wie gibt man die Spalte an, die zum Verbinden der Tabellen verwendet wird?
Welche Arten von Joins unterstützt die alJoin-Aktion?
Was steuert der `logLevel`-Parameter?