Language

DataViewRow クラス

定義

データの論理行。 IDataViewまたはスタンドアロン行の行を指定できます。

public abstract class DataViewRow : IDisposable
type DataViewRow = class
    interface IDisposable
Public MustInherit Class DataViewRow
Implements IDisposable
継承
DataViewRow
派生
実装

コンストラクター

名前 説明
DataViewRow()

データの論理行。 IDataViewまたはスタンドアロン行の行を指定できます。

プロパティ

名前 説明
Batch

これにより、一般的に GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random)から生成された複数の行を調整する手段が提供されます。 セットを取得するときは、並列処理を続行できる一方で、元の注文を回復可能にする必要があることを常に目指す必要があります。 ユーザーが特定のアプリケーションでその元の順序を気にするかどうかは別の話です (実用的な問題としてこの呼び出し元のほとんどは呼び出しません。そうしないと呼び出されません)、少なくとも原則として、同じ構成の GetRowCursor(IEnumerable<DataViewSchema.Column>, Random)から元の順序を再構築できる必要があります。 そのため、カーソルの実装では、バッチ番号は減少しない必要があります。 さらに、指定されたバッチ番号は、 GetRowCursorSet(IEnumerable<DataViewSchema.Column>, Int32, Random)によって返されるカーソルの 1 つにのみ表示されます。 このようにして、順序はバッチ番号によって決定されます。 これらのカーソルを調整して一貫性のある単一カーソルを生成する操作は、使用可能な最小のバッチ番号を持つセット内のすべてのカーソルの中で、1 つのカーソルから描画することによって行うことができます。

一貫性によって全体的な順序が同じになる点を除き、特定のエントリのバッチがカーソル位置からカーソル位置まで一貫していることを示す提案はありません。 同じエントリに、カーソルを置くバッチ番号が異なる場合があります。 また、指定されたバッチ番号を表示する必要があることもまったく必要ありません。 これは、データの任意のパーティション分割から順序を回復するためのメカニズムにすぎません。 もちろん、バッチをデータのプロパティと見なしても完全に無効です。

Position

これは、基になるコンテンツが変更されたときにインクリメントされ、クライアントに変更を検出する方法が提供されます。 オブジェクトが値をフェッチできない状態にある場合は、-1 する必要があります。 特に、 DataViewRowCursorの場合、これは初めて呼び出された場合は MoveNext() 前、または初めて MoveNext() が呼び出されて falseを返した後になります。

この位置は基になるデータ内の位置ではなく、このカーソルの位置のみであることに注意してください。 たとえば、並列ストリーミング カーソルのセットやシャッフル されたカーソルを開いた場合、このようなカーソルの最初の有効なエントリの位置は常に 0 になります。

Schema

Schemaを取得します。この行に格納されている変数 (つまり、ML.NET の型システムの列) の名前と型情報を提供します。

メソッド

名前 説明
Dispose()

Dispose の実装。 Dispose(Boolean)を使用してtrueを呼び出します。

Dispose(Boolean)

破棄可能なパターンの破棄可能なメソッド。 この既定の実装では何も行われません。

GetGetter<TValue>(DataViewSchema+Column)

指定した columnの値を行からフェッチする値ゲッター デリゲートを返します。 これは、列がこの行でアクティブでない場合、または型 TValue この列の型と異なる場合にスローされます。

GetIdGetter()

128 ビット ID 値のゲッター。 オブジェクトが複数の DataViewRow インスタンスにサービスを提供して、同じデータであるはずのデータを反復処理するのが一般的です。たとえば、 IDataView カーソル セットでは、シリアル カーソルと同じデータが生成され、パーティション分割され、シャッフルされたカーソルはシリアル カーソルまたは他のシャッフルされたカーソルと同じデータを生成します。 シャッフルのみ。 ID は、どのエントリが実際にどのエントリであるかを調整する必要があるアプリケーションに対して存在します。 理想的には、この ID は一意である必要がありますが、実際上の理由から、衝突が非常にあり得ない場合は十分です。

この ID は、上記のセマンティクスに従って複数のストリームに対して一貫性が必要ですが、それ自体はデータの一部とは見なされないことに注意してください。 したがって、データ ビューの例を具体的に見ると、1 つのデータ ビューですべてのカーソル間で一貫性のある ID をレンダリングする必要がありますが、"同じ" データが別のデータ ビュー (たとえば、変換、キャッシュ、保存など) で表示された場合、2 つの異なるデータ ビュー間の ID には識別可能な関係があることをまったく提案しません。

IsColumnActive(DataViewSchema+Column)

指定された列がこの行でアクティブかどうかを返します。

適用対象