DataViewRowCursor Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Classe usata per eseguire il cursore tra righe di un oggetto IDataView.
public abstract class DataViewRowCursor : Microsoft.ML.DataViewRow
type DataViewRowCursor = class
inherit DataViewRow
Public MustInherit Class DataViewRowCursor
Inherits DataViewRow
- Ereditarietà
Commenti
Si noti che si tratta anche di un oggetto DataViewRow. l'oggetto Position viene incrementato di MoveNext(). Prima della prima chiamata a MoveNext()o dopo MoveNext() restituisce false, Position è -1. In caso contrario, quando MoveNext() restituisce true, Position>= 0.
Costruttori
| Nome | Descrizione |
|---|---|
| DataViewRowCursor() |
Classe usata per eseguire il cursore tra righe di un oggetto IDataView. |
Proprietà
| Nome | Descrizione |
|---|---|
| Batch |
Ciò consente di riconciliare più righe prodotte in genere da GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random). Quando si ottiene un set, è necessario, consentendo al contempo l'elaborazione parallela di procedere, avere sempre un obiettivo che l'ordine originale deve essere recuperabile. Si noti che un utente si preoccupa o meno di quell'ordine originale in un'applicazione specifica è un'altra storia del tutto (la maggior parte dei chiamanti di questo come una questione pratica non lo chiama, altrimenti non lo chiamerebbe), ma almeno in linea di principio dovrebbe essere possibile ricostruire l'ordine originale che si otterrebbe da un oggetto configurato GetRowCursor(IEnumerable<DataViewSchema.Column>, Random)in modo identico. Quindi: per qualsiasi implementazione del cursore, i numeri batch devono essere non decrescente. Inoltre, qualsiasi numero di batch specificato deve essere visualizzato solo in uno dei cursori restituiti da GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random). In questo modo, l'ordine è determinato dal numero batch. Un'operazione che riconcilia questi cursori per produrre un cursore singolo coerente può farlo disegnando dal singolo cursore, tra tutti i cursori nel set, con il numero di batch più piccolo disponibile. Si noti che non vi è alcun suggerimento che i batch per una determinata voce saranno coerenti dal cursore al cursore, ad eccezione della coerenza con conseguente ordinamento complessivo. La stessa voce potrebbe avere numeri di batch diversi da un cursore a un altro. Non è inoltre necessario che venga visualizzato alcun numero di batch specificato. Si tratta semplicemente di un meccanismo per il recupero dell'ordinamento da un partizionamento eventualmente arbitrario dei dati. A questo scopo, naturalmente, si considera che il batch sia una proprietà dei dati non è completamente valido. (Ereditato da DataViewRow) |
| Position |
Questo viene incrementato quando il contenuto sottostante cambia, offrendo ai client un modo per rilevare la modifica. Deve essere -1 quando l'oggetto si trova in uno stato in cui non è possibile recuperare i valori. In particolare, per un oggetto DataViewRowCursor, questo sarà prima MoveNext() che venga chiamato per la prima volta o dopo la prima chiamata MoveNext() e restituisce Si noti che questa posizione non è posizionata all'interno dei dati sottostanti, ma solo la posizione di questo cursore. Se, ad esempio, si apre un set di cursori di streaming paralleli o un cursore casuale, la prima voce valida di ogni cursore avrà sempre la posizione 0. (Ereditato da DataViewRow) |
| Schema |
Ottiene un Schemaoggetto , che fornisce informazioni sul nome e sul tipo per le variabili ,ad esempio le colonne nel sistema dei tipi di ML.NET) archiviate in questa riga. (Ereditato da DataViewRow) |
Metodi
| Nome | Descrizione |
|---|---|
| Dispose() |
Implementazione di dispose. Chiama Dispose(Boolean) con |
| Dispose(Boolean) |
Metodo eliminabile per il modello eliminabile. Questa implementazione predefinita non esegue alcuna operazione. (Ereditato da DataViewRow) |
| GetGetter<TValue>(DataViewSchema+Column) |
Restituisce un delegato getter di valore per recuperare il valore dell'oggetto specificato |
| GetIdGetter() |
Getter per un valore ID a 128 bit. È comune che gli oggetti usino più DataViewRow istanze per eseguire l'iterazione degli stessi dati, ad esempio in un IDataView set di cursori produrrà gli stessi dati di un cursore seriale, appena partizionato e un cursore casuale produrrà gli stessi dati di un cursore seriale o qualsiasi altro cursore casuale, solo shuffled. L'ID esiste per le applicazioni che devono riconciliare la voce in realtà. Idealmente questo ID deve essere univoco, ma per motivi pratici, è sufficiente se le collisioni sono semplicemente estremamente improbabili. Si noti che questo ID, mentre deve essere coerente per più flussi in base alla semantica precedente, non è considerato parte dei dati per se. Pertanto, per prendere in considerazione l'esempio di una vista dati in modo specifico, una singola vista dati deve eseguire il rendering di ID coerenti in tutti i cursori, ma non vi è alcun suggerimento che se i dati "stessi" siano stati presentati in una vista dati diversa (ad esempio, essere trasformati, memorizzati nella cache, salvati o qualsiasi altro), che gli ID tra le due visualizzazioni dati diverse abbiano una relazione rilevabile. (Ereditato da DataViewRow) |
| IsColumnActive(DataViewSchema+Column) |
Restituisce un valore che indica se la colonna specificata è attiva in questa riga. (Ereditato da DataViewRow) |
| MoveNext() |
Passare alla riga successiva. Quando il cursore viene creato per la prima volta, questo metodo deve essere chiamato per passare alla prima riga. Restituisce |