Select Columns in Dataset
Wichtig
Der Support für Machine Learning Studio (klassisch) endet am 31. August 2024. Es wird empfohlen, bis zu diesem Datum auf Azure Machine Learning umzustellen.
Ab dem 1. Dezember 2021 können Sie keine neuen Ressourcen in Machine Learning Studio (klassisch) mehr erstellen. Bis zum 31. August 2024 können Sie die vorhandenen Ressourcen in Machine Learning Studio (klassisch) weiterhin verwenden.
- Siehe Migrieren zu Azure Machine Learning
- Weitere Informationen zu Azure Machine Learning.
Die Dokumentation zu ML Studio (klassisch) wird nicht mehr fortgeführt und kann künftig nicht mehr aktualisiert werden.
Wählt Spalten, die aus einem Dataset in einem Vorgang ein- oder ausgeschlossen werden.
Kategorie: Datentransformation/-bearbeitung
Hinweis
Gilt für: Machine Learning Studio (klassisch)
Ähnliche Drag & Drop-Module sind im Azure Machine Learning-Designer verfügbar.
Modulübersicht
In diesem Artikel wird beschrieben, wie Sie das Modul Select Columns in Dataset in Machine Learning Studio (klassisch) verwenden, um eine Teilmenge der Spalten auszuwählen, die in Downstreamvorgängen verwendet werden sollen. Das Modul entfernt die Spalten nicht physisch aus dem Quelldatensatz, sondern erstellt eine Teilmenge von Spalten ähnlich der Sicht oder Projektion einer Datenbank.
Dieses Modul ist besonders nützlich, wenn Sie die für einen Downstreamvorgang verfügbaren Spalten einschränken müssen oder wenn Sie die Größe des Datasets verringern möchten, indem Sie nicht benötigten Spalten entfernen.
Die Spalten im Dataset werden in derselben Reihenfolge ausgegeben wie in den Originaldaten, auch wenn Sie diese in einer anderen Reihenfolge angeben.
Verwenden von Select Columns in Dataset
Dieses Modul enthält keine Parameter. Verwenden Sie die Spaltenauswahl, um die ein- oder auszuschließenden Spalten auszuwählen.
Auswählen von Spalten nach Namen
Das Modul bietet mehrere Optionen für die Spaltenauswahl nach Namen:
Filtern und suchen
Klicken Sie auf die Option BY NAME.
Wenn Sie ein bereits aufgefülltes Dataset verbunden haben, sollte eine Liste der verfügbaren Spalten angezeigt werden. Wenn dies nicht der Fall ist, müssen Sie ggf. Upstream-Module ausführen, um die Spaltenliste anzuzeigen.
Um die Liste zu filtern, geben Sie einen Begriff in das Suchfeld ein. Wenn Sie z. B. den Buchstaben
w
in das Suchfeld eingeben, wird die Liste gefiltert und enthält die Spaltennamen, in denen der Buchstabew
vorkommt.Wählen Sie Spalten aus, und klicken Sie auf den nach rechts weisenden Pfeil, um die ausgewählten Spalten in die Liste im rechten Bereich zu verschieben.
- Um einen fortlaufenden Bereich von Spaltennamen auszuwählen, drücken Sie UMSCHALT+KLICK.
- Um der Auswahl einzelne Spalten hinzuzufügen, drücken Sie STRG+KLICK.
Klicken Sie auf das Häkchen, um die Auswahl zu speichern und zu schließen.
Verwenden von Namen in Kombination mit weiteren Regeln
Klicken Sie auf die Option WITH RULES.
Wählen Sie eine Regel aus, z. B. für das Anzeigen von Spalten eines bestimmten Datentyps.
Klicken Sie auf die Namen einzelner Spalten dieses Typs, um sie der Auswahlliste hinzuzufügen.
Eingeben oder Einfügen einer durch Trennzeichen getrennten Liste von Spaltennamen
Wenn Ihr Dataset sehr breit ist, ist es möglicherweise einfacher, Indizes oder generierte Namenslisten zu verwenden, anstatt Spalten einzeln auszuwählen. Wenn Sie die Liste vorab vorbereitet haben:
- Klicken Sie auf die Option WITH RULES.
- Wählen Sie No columns (Keine Spalten) und Include (Einschließen) aus, und klicken Sie dann in das Textfeld mit dem roten Ausrufezeichen.
- Fügen oder geben Sie eine durch Trennzeichen getrennte Liste von Spaltennamen ein, die zuvor überprüft wurden. Das Modul kann nicht gespeichert werden, wenn eine Spalte einen ungültigen Namen aufweist. Überprüfen Sie deshalb die Namen im Vorfeld.
Sie können diese Methode auch verwenden, um eine Liste von Spalten anhand ihrer Indexwerte anzugeben. Im Abschnitt Beispiele finden Sie Tipps zum Arbeiten mit Spaltenindizes.
Auswählen nach Typ
Wenn Sie die Option WITH RULES verwenden, können Sie mehrere Bedingungen auf die Spaltenauswahlen anwenden. Beispielsweise kann es vorkommen, dass Sie nur Featurespalten eines numerischen Datentyps benötigen.
Die Option BEGIN WITH bestimmt Ihren Ausgangspunkt und ist sehr wichtig, um die Ergebnisse zu verstehen.
Bei Auswahl der Option ALL COLUMNS werden der Liste alle Spalten hinzugefügt. Anschließend müssen Sie die Option Exclude (Ausschließen) verwenden, um Spalten zu entfernen, die bestimmte Bedingungen erfüllen.
Sie können zunächst mit allen Spalten beginnen und dann Spalten nach Namen oder Typ entfernen.
Wenn Sie die Option NO COLUMNS auswählen, ist die Liste der Spalten am Anfang leer. Als Nächstes geben Sie Bedingungen an, um der Liste Spalten hinzuzufügen.
Wenn Sie mehrere Regeln anwenden, ist jede Bedingung additiv. Angenommen, Sie beginnen ohne Spalten und fügen dann eine Regel hinzu, um alle numerischen Spalten abzurufen. Im Dataset mit Automobilpreisen erhalten Sie daraufhin 16 Spalten. Klicken Sie dann auf das Vorzeichen + , um eine neue Bedingung hinzuzufügen, und wählen Sie Alle Features enthalten aus. Das resultierende Dataset umfasst alle numerischen Spalten sowie alle Featurespalten einschließlich einiger textbasierten Featurespalten.
Auswählen nach Spaltenindex
Der Spaltenindex bezieht sich auf die Reihenfolge der Spalte innerhalb des ursprünglichen Datasets.
- Spalten werden sequenziell beginnend mit 1 nummeriert.
- Um einen Bereich von Spalten abzurufen, verwenden Sie einen Bindestrich.
- Offene Spezifikationen wie
1-
oder-3
sind nicht zulässig. - Doppelte Indexwerte (oder Spaltennamen) sind nicht zulässig und können einen Fehler verursachen.
Beispiel: Wenn Ihr Dataset mindestens acht Spalten enthält, können Sie eines der folgenden Beispiele einfügen, um mehrere nicht zusammenhängende Spalten zurückzugeben:
8,1-4,6
1,3-8
1,3-6,4
Das letzte Beispiel verursacht zwar keinen Fehler, gibt jedoch eine einzelne Instanz der Spalte 4
zurück.
Weitere Tipps zum Arbeiten mit Spaltenindizes finden Sie im Abschnitt Beispiele .
Ändern der Reihenfolge von Spalten
Bei der Option Allow duplicates and preserve column order in selection (Duplikate zulassen und Spaltenreihenfolge in der Auswahl beibehalten) beginnen Sie mit einer leeren Liste. Anschließend fügen Sie nach Namen oder Index ausgewählte Spalten hinzu. Im Unterschied zu anderen Optionen, die Spalten immer in ihrer „natürlichen Reihenfolge“ zurückgeben, gibt diese Option die Spalten in der von Ihnen benannten oder aufgelisteten Reihenfolge aus.
Beispiel: In einem Dataset, das die Spalten Col1, Col2, Col3 und Col4 enthält, können Sie die Reihenfolge der Spalten umkehren und die Spalte 2 auslassen, indem Sie eine der folgenden Listen angeben:
Col4, Col3, Col1
4,3,1
Beispiele
Beispiele für die Verwendung von Select Columns in Dataset finden Sie in den folgenden Beispielexperimenten im Modellkatalog:
Im Beispiel für die Erkennung von Viruszellen wird Select Columns in Dataset (Spalten im Dataset auswählen) verwendet, um eine nachstehende leere Spalte zu entfernen, eine Spalte mit doppelten Daten zu entfernen und Trainings- und Testsätze zu pro projectieren.
Im Beispiel flight delay prediction (Flugverzögerungsvorhersage ) wird Select Columns in Dataset (Spalten im Dataset auswählen) verwendet, um alle Zeichenfolgenspalten auszuschließen und Spalten nach Namen auszuschließen.
Im Beispiel Vorhersage der Leistung von Studenten wird Select Columns in Dataset verwendet, um alle temporalen Features zu erhalten und mehrere Spalten auszuschließen.
Im Beispiel Vergleichsregressoren wird Select Columns in Dataset verwendet, um die Spalte num-of-doors auszuschließen, da es sich um den falschen Datentyp für den folgenden mathematischen Vorgang handelt.
Allgemeine Szenarien für die Spaltenauswahl
In den folgenden Beispielen werden einige typische Methoden beschrieben, wie Benutzer Select Columns in Dataset in Machine Learning anwenden, und einige Tipps zum Auswählen der Spalten:
Ich möchte Textspalten aus dem Dataset entfernen, damit ich eine mathematische Operation auf alle numerischen Spalten anwenden kann.
Viele Vorgänge erfordern, dass nur numerische Spalten im Dataset vorhanden sind. Sie können Spalten, die einen Fehler verursachen würden, vorübergehend entfernen, indem Sie Text ausschließen und kategorische Spalten (Zahlen, die diskrete Kategorien darstellen) ausschließen.
Klicken Sie auf Spaltenauswahl starten.
Wählen Sie für Begin With (Beginnen mit) die Option Alle Spalten aus.
Wählen Sie die Option Ausschließen aus, wählen Sie den Spaltentyp aus, und wählen Sie dann Zeichenfolge aus.
Klicken Sie auf das Pluszeichen (+), um eine neue Bedingung hinzuzufügen.
Wählen Sie die Option Ausschließen aus, wählen Sie den Spaltentyp aus, und wählen Sie dann Kategorisch aus.
Ich muss die Featureauswahl nur auf die Kategorischen Featurespalten anwenden.
Wenn Sie Spalten eines ähnlichen Typs trennen müssen, können Sie mehrere Bedingungen anwenden. Beispielsweise können Features kategorisch oder numerisch sein, aber einige Funktionsauswahlmodule lassen keine nicht numerischen Felder zu. Daher müssen Sie zuerst Features erhalten und dann eine Bedingung hinzufügen, um nur die numerischen Features zu erhalten.
Klicken Sie auf Spaltenauswahl starten.
Wählen Sie für Begin With (Beginnen mit) die Option No columns (Keine Spalten) aus.
Wählen Sie die Option Include aus, und wählen Sie alle Features aus.
Klicken Sie auf das Pluszeichen (+), um eine neue Bedingung hinzuzufügen.
Wählen Sie die Option Include (Include) aus, wählen Sie column type (Spaltentyp) aus, und wählen Sie dann Categorical (Kategorisch) aus.
Ich muss einen anderen Normalisierungsvorgang auf verschiedene numerische Spalten anwenden.
Vor dem Anwenden mathematischer Operationen müssen Sie möglicherweise ganze Zahlen von Gleitkommazahlen usw. trennen. Verwenden Sie hierzu die Datentypen, und wenden Sie mehrere Bedingungen an.
Klicken Sie auf Spaltenauswahl starten.
Wählen Sie für Begin With (Beginnen mit) die Option No columns (Keine Spalten) aus.
Wählen Sie die Option Include (Include) aus, wählen Sie column type (Spaltentyp) und dann Numeric (Numerisch) aus.
Klicken Sie auf das Pluszeichen (+), um eine neue Bedingung hinzuzufügen.
Wählen Sie die Option Include aus, wählen Sie den Spaltentyp aus, und wählen Sie dann den numerischen Typ aus, der mit dem Downstreamvorgang nicht kompatibel ist.
Es gibt zu viele Spalten, die mit dem Selektor ausgewählt werden können.
Nach dem Importieren eines Datasets werden Sie häufig feststellen, dass es viele Spalten enthält, die für die Modellierung nicht benötigt werden. Sie möchten sie jedoch für die spätere Ausgabe oder zum Identifizieren von Fällen beibehalten. Dazu teilen Sie das Dataset nach Bedarf in zwei Teile (Metadaten und Spalten, die für die Modellierung verwendet werden) auf und fügen später Spalten mithilfe von Spalten hinzufügen neu zusammen.
Klicken Sie auf Spaltenauswahl starten.
Wählen Sie für Begin With (Beginnen mit) die Option No columns (Keine Spalten) aus.
Wählen Sie die Option Include (Include) aus, wählen Sie column type (Spaltentyp) aus, und wählen Sie dann Feature aus.
Klicken Sie auf das Pluszeichen (+), um eine neue Bedingung hinzuzufügen.
Wählen Sie die Option Include (Include) aus, wählen Sie column type (Spaltentyp) aus, und wählen Sie dann Label (Bezeichnung) aus.
Wiederholen Sie diese Schritte, beginnen Sie jedoch mit allen Spalten, und schließen Sie dann Feature- und Bezeichnungsspalten aus, um nur ein Dataset mit den Metadaten zu erstellen.
Ich weiß nicht, welche Indexwerte ich für die benötigten Spalten habe.
Wenn ihr Dataset nur wenige Spalten enthält, können Sie die Option Visualisieren verwenden, um die ersten 100 Zeilen zu sehen und dann herauszufinden, welche Spalte index 1, 2 usw. ist.
Die Indizes in Machine Learning bei 1 beginnen, sodass die erste Spalte immer 1 ist.
Um den Index der letzten Spalte zu erhalten, sehen Sie sich die beiden Spaltenlisten in der Spaltenauswahl an: AVAILABLE COLUMNS und SELECTED COLUMNS. Die graue Leiste unter der Spaltenliste zeigt die Anzahl der Spalten in jeder Liste an. Wenn also 24 Spalten verfügbar sind und zwei Spalten ausgewählt sind, gibt es insgesamt 26 Spalten, und der Index der letzten Spalte ist 26.
Eine weitere Möglichkeit zum Extrahieren des Schemas Ihres Datasets ist die Verwendung des Moduls R-Skript ausführen, um die Spaltennamen mit Indexnummern zu erhalten.
Verbinden Sie Ihr Dataset in das Modul Execute R Script (R-Skript ausführen).
Geben Sie im Modul ein Skript wie das folgende ein, um die Spaltennamen ausausgaben zu können. Die Zeile, die mit beginnt
myindex
, generiert eine Sequenz, die die Indizes in der Reihenfolge darstellt.dataset1 <- maml.mapInputPort(1) # class: data.frame mycolnames <-names(dataset1); myindex <- seq(from = 1, to = length(mycolnames), by=1); outdata <- as.data.frame(cbind(myindex, mycolnames)); maml.mapOutputPort("outdata");
Ergebnisse des Datasets "Automobile price"
myindex mycolnames 1 symboling 2 normalized-losses 3 Make
Technische Hinweise
Wenn Sie mit relationalen Datenbanken vertraut sind, erstellt dieses Modul eine Projektion der Daten. daher der ursprüngliche Name, Project Spalten. In Datenbankbegriffen ist eine Projektion eine Funktion, z. B. eine Transact-SQL- oder LINQ-Anweisung, die Daten im Tabellenformat als Eingabe verwendet und eine zugehörige Ausgabe erzeugt.
In relationaler Algebra ist eine Projektion eine unäre Operation, die als Satz von Attributnamen geschrieben wird. Das Ergebnis einer Projektion ist ein Satz dieser Attribute, während andere Attribute verworfen werden.
Erwartete Eingaben
Name | Type | Beschreibung |
---|---|---|
Dataset | Datentabelle | Eingabedataset |
Modulparameter
Name | Range | type | Standard | Beschreibung |
---|---|---|---|---|
Spalten auswählen | any | ColumnSelection | Wählen Sie die Spalten aus, die im projizierten Dataset beibebehalten werden sollen. |
Ausgaben
Name | Type | Beschreibung |
---|---|---|
Ergebnisdataset | Datentabelle | Ausgabedataset |
Ausnahmen
Ausnahme | Beschreibung |
---|---|
Fehler 0001 | Eine Ausnahme tritt auf, wenn mindestens eine angegebene Spalte des Datasets nicht gefunden werden konnte. |
Fehler 0003 | Eine Ausnahme tritt auf, wenn mindestens ein Eingabedataset null oder leer ist. |
Eine Liste der Fehler, die für Studio-Module (klassisch) spezifisch sind, finden Sie unter Machine Learning Fehlercodes.
Eine Liste der API-Ausnahmen finden Sie unter Machine Learning REST-API-Fehlercodes.