DataViewRowCursor Klasse

Definition

Klasse, die zum Cursorn durch Zeilen einer .IDataView

public abstract class DataViewRowCursor : Microsoft.ML.DataViewRow
type DataViewRowCursor = class
    inherit DataViewRow
Public MustInherit Class DataViewRowCursor
Inherits DataViewRow
Vererbung
DataViewRowCursor

Hinweise

Beachten Sie, dass dies auch ein DataViewRow. Dies Position wird erhöht von MoveNext(). Vor dem ersten Aufruf von MoveNext(), oder nach MoveNext() Rückgabe false, Position ist -1. Andernfalls, wenn MoveNext() zurückgegeben truewird , Position>= 0.

Konstruktoren

Name Beschreibung
DataViewRowCursor()

Klasse, die zum Cursorn durch Zeilen einer .IDataView

Eigenschaften

Name Beschreibung
Batch

Dies ermöglicht die Abstimmung mehrerer Zeilen, die im Allgemeinen erstellt GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random)wurden. Beim Abrufen eines Satzes ist es erforderlich, während parallele Verarbeitung fortgesetzt werden kann, immer ein Ziel haben, dass die ursprüngliche Bestellung wiederhergestellt werden kann. Beachten Sie, ob sich ein Benutzer um diese ursprüngliche Reihenfolge in der spezifischen Anwendung kümmert oder nicht, eine andere Geschichte (die meisten Anrufer dieser Sache nicht, andernfalls würden sie ihn nicht nennen), aber zumindest im Prinzip sollte es möglich sein, die ursprüngliche Reihenfolge zu rekonstruieren, die man aus einer identisch konfigurierten GetRowCursor(IEnumerable<DataViewSchema.Column>, Random). Für jede Cursorimplementierung sollten Batchnummern nicht abnehmend sein. Darüber hinaus sollte jede gegebene Batchnummer nur in einem der Cursor angezeigt werden, wie sie zurückgegeben werden GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random). Auf diese Weise wird die Reihenfolge durch die Batchnummer bestimmt. Ein Vorgang, der diese Cursor abgleicht, um eine konsistente Einzelcursoring zu erzeugen, könnte dies durch Zeichnen vom einzelnen Cursor unter allen Cursorn in der Gruppe, die die kleinste Batchnummer verfügbar ist.

Beachten Sie, dass es keinen Vorschlag gibt, dass die Batches für einen bestimmten Eintrag von cursorn bis hin zur Cursorung konsistent sind, mit Ausnahme der Konsistenz, in der die gleiche Gesamtbestellung entsteht. Derselbe Eintrag könnte unterschiedliche Batchnummern von einem Cursor in eine andere enthalten. Es ist auch nicht erforderlich, dass überhaupt eine bestimmte Batchnummer angezeigt werden muss. Es handelt sich lediglich um einen Mechanismus zum Wiederherstellen der Sortierung aus einer möglicherweise willkürlichen Partitionierung der Daten. Daraus folgt natürlich auch, dass die Berücksichtigung des Batches als Eigenschaft der Daten völlig ungültig ist.

(Geerbt von DataViewRow)
Position

Dies wird erhöht, wenn sich der zugrunde liegende Inhalt ändert, sodass Clients eine Möglichkeit zum Erkennen von Änderungen erhalten. Es sollte -1 sein, wenn sich das Objekt in einem Zustand befindet, in dem Werte nicht abgerufen werden können. Insbesondere für ein DataViewRowCursor, dies wird MoveNext() vor, wenn jemals zum ersten Mal aufgerufen wird, oder nach dem ersten Mal MoveNext() aufgerufen und zurückgegeben false.

Beachten Sie, dass diese Position nicht innerhalb der zugrunde liegenden Daten, sondern nur die Position dieses Cursors ist. Wenn z. B. ein Satz paralleler Streamingcursor oder ein gemischter Cursor geöffnet wurde, hat jeder dieser Cursor den ersten gültigen Eintrag immer die Position 0.

(Geerbt von DataViewRow)
Schema

Ruft ein Schema, das Namen- und Typinformationen für Variablen (d. h. Spalten im Typsystem ML.NET) bereitstellt, die in dieser Zeile gespeichert sind.

(Geerbt von DataViewRow)

Methoden

Name Beschreibung
Dispose()

Implementierung von Dispose. Anrufe Dispose(Boolean) mit true.

(Geerbt von DataViewRow)
Dispose(Boolean)

Die Einwegmethode für das Einwegmuster. Diese Standardimplementierung führt nichts aus.

(Geerbt von DataViewRow)
GetGetter<TValue>(DataViewSchema+Column)

Gibt einen Wert-Getterdeldel zurück, um den Wert des angegebenen columnWerts aus der Zeile abzurufen. Dies wird ausgelöst, wenn die Spalte in dieser Zeile nicht aktiv ist oder sich der Typ vom Typ TValue dieser Spalte unterscheidet.

(Geerbt von DataViewRow)
GetIdGetter()

Ein Getter für einen 128-Bit-ID-Wert. Es ist üblich, dass Objekte mehrere DataViewRow Instanzen durchlaufen, um zu durchlaufen, was die gleichen Daten sein soll, z. B. in einem IDataView Cursorsatz, die gleichen Daten wie ein serieller Cursor erzeugen, nur partitioniert, und ein shuffled Cursor erzeugt dieselben Daten wie ein serieller Cursor oder einen anderen gemischten Cursor, nur geschmufft. Die ID ist für Anwendungen vorhanden, die abgleichen müssen, welcher Eintrag tatsächlich ist. Idealerweise sollte diese ID eindeutig sein, aber aus praktischen Gründen genügt es, wenn Kollisionen einfach extrem unwahrscheinlich sind.

Beachten Sie, dass diese ID zwar für mehrere Datenströme gemäß der obigen Semantik konsistent sein muss, jedoch nicht als Teil der Daten pro Se betrachtet wird. Um also das Beispiel einer Datenansicht speziell zu betrachten, muss eine einzelne Datenansicht konsistente IDs über alle Cursor hinweg rendern, aber es gibt überhaupt keinen Vorschlag, dass die IDs zwischen den beiden verschiedenen Datenansichten in einer anderen Datenansicht dargestellt wurden (z. B. transformiert, zwischengespeichert, gespeichert oder was auch immer), dass die IDs zwischen den beiden verschiedenen Datenansichten eine erkennbare Beziehung haben würden.

(Geerbt von DataViewRow)
IsColumnActive(DataViewSchema+Column)

Gibt zurück, ob die angegebene Spalte in dieser Zeile aktiv ist.

(Geerbt von DataViewRow)
MoveNext()

Wechseln zur nächsten Zeile. Wenn der Cursor zum ersten Mal erstellt wird, sollte diese Methode aufgerufen werden, um zur ersten Zeile zu wechseln. Gibt zurück false , wenn keine weiteren Zeilen vorhanden sind.

Gilt für: