すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:CSVファイルの読み取り

最終更新日:Jul 22, 2024

CSVファイルの読み取りコンポーネントを使用すると、OSS (Object Storage Service) 、HTTP、およびHDFS (Hadoop Distributed File System) データソースからCSVファイルを読み取ることができます。 このトピックでは、CSVファイルの読み取りコンポーネントを設定する方法について説明します。

制限事項

  • Machine Learning Platform for AI (PAI) コンソールでCSVファイルの読み取りコンポーネントを設定した場合、MaxComputeおよびRealtime Compute for Apache Flinkのコンピューティングリソースのみがサポートされます。

  • PyAlinkスクリプトコンポーネントを使用してCSVファイルの読み取りコンポーネントを構成する場合は、PyAlinkスクリプトコンポーネントを使用してコードを呼び出す必要があります。 詳細については、「PyAlinkスクリプト」をご参照ください。

前提条件

(オプション) PAIはOSSへのアクセスが許可されています。 詳細については、「Machine Learning Designerの使用に必要な権限の付与」をご参照ください。

説明

fileSourceOSSを選択した場合、権限付与を実行する必要があります。

CSVファイルの読み取りコンポーネントの設定

次のいずれかの方法を使用して、CSVファイルの読み取りコンポーネントを設定できます。

方法1: PAIコンソール

次の表に、[Visualized Modeling (Designer)] ページで設定する必要があるパラメーターを示します。

タブ

パラメーター

説明

パラメーター設定

fileSource

CSVファイルのソース。 有効な値: OSSおよびOTHERS。

ossFilePathまたはfilePath

CSVファイルのパス。

  • fileSourceOSSを選択した場合、OSSパスを入力または選択できます。 1 GB未満のサイズの単一のファイルを読み取る場合は、[OSSの選択] ディレクトリまたはファイルページの指定されたOSSパスにCSVファイルを直接アップロードできます。

  • fileSource[OTHERS] を選択した場合、HTTPサーバーまたはHDFSファイルシステムでファイルパスを入力できます。

スキーマ

各列のデータ型。 このパラメーターをcolname0 coltype0、colname1 coltype1、colname2 coltype2 ..形式を指定します。 例: f0 string,f1 bigint,f2 double

重要

各列に設定されたデータ型は、読み取りたいCSVファイルのデータ型と同じである必要があります。 そうしないと、システムはCSVファイルの特定の列のデータを読み取ることができません。

fieldDelimiter

フィールド区切り文字。 デフォルトでは、コンマ (,) が使用されます。

handleInvalidMethod

Tensor、Vector、またはMTable型のデータの解析に失敗した場合に、これらの型の無効なデータを処理するために使用されるメソッド。 これらのデータ型は、Alinkアルゴリズムフレームワークによって定義され、固定の構文解析フォーマットを有する。 有効な値:

  • エラー: システムがCSVファイルの読み取りを停止します。

  • SKIP: 無効なデータをスキップします。

ignoreFirstLine

最初の行のデータをスキップするかどうかを指定します。 読み取りたいCSVファイルの最初の行がテーブルヘッダーの場合は、このスイッチをオンにする必要があります。

寛大な

入力データレコードのスキーマがschemaパラメーターで指定された情報と一致しない場合に、不一致を処理するために使用されるメソッド。 不整合の問題は、データ型または列の数にある可能性があります。

  • lenientがオンになり、行内のデータの解析に失敗した場合、その行内のデータは破棄されます。

  • lenientがオフになり、行内のデータの解析に失敗した場合、システムはCSVファイルの読み取りを停止し、エラー行を表示します。

quoteString

引用文字。The quote character. デフォルトでは、二重引用符 (") が使用されます。

rowDelimiter

行の区切り文字。 デフォルトでは、改行フィード (\n) が使用されます。

skipBlankLine

空白行をスキップするかどうかを指定します。

実行チューニング

数の労働者

ノードの数を示します。 値は正の整数でなければなりません。 このパラメーターは、Memory per workerパラメーターと共に使用する必要があります。 有効な値: 1 ~ 9999

workerあたりのメモリ

各ノードのメモリサイズ。 単位:MB。 値は正の整数でなければなりません。 有効な値: 1024〜65536。

方法2: PyAlinkスクリプトコンポーネント

次の表に、PyAlinkスクリプトコンポーネントを使用してCSVファイルの読み取りコンポーネントを設定するときに設定する必要があるパラメーターを示します。PyAlinkスクリプトコンポーネントの詳細については、「PyAlinkスクリプト」をご参照ください。

パラメーター

必須

説明

デフォルト値

schemaStr

Yes

CSVファイルのデータ型。 このパラメーターは、colname0 coltype0[, colname1 coltype1[, ...]] 形式で指定します。 例: f0 string,f1 bigint,f2 double

なし

filePath

No

CSVファイルのパス。

なし

fieldDelimiter

No

フィールド区切り文字。

コンマ (,)

handleInvalidMethod

No

Tensor、Vector、またはMTableタイプの無効なデータを処理するために使用されるメソッド。 これらの型のデータは解析に失敗します。 これらのデータ型は、Alinkアルゴリズムフレームワークによって定義され、固定の構文解析フォーマットを有する。 有効な値:

  • エラー: システムがCSVファイルの読み取りを停止します。

  • SKIP: 無効なデータをスキップします。

ERROR

ignoreFirstLine

No

最初の行のデータをスキップするかどうかを指定します。 読み取りたいCSVファイルの最初の行がテーブルヘッダーの場合、このパラメーターをTrueに設定する必要があります。

False

寛大な

No

入力データレコードのスキーマがschemaパラメーターで指定された情報と一致しない場合に、不一致を処理するために使用されるメソッド。 不整合の問題は、データ型または列の数にある可能性があります。

  • true: 行のデータは破棄されます。

  • false: エラーメッセージが返されます。

False

quoteString

No

引用文字。The quote character.

二重引用符 (")

rowDelimiter

No

行の区切り文字。

ラインフィード (\n)

skipBlankLine

No

空白行をスキップするかどうかを指定します。

正しい

サンプルPyAlinkスクリプト:

filePath = 'https://alink-test-data.oss-cn-hangzhou.aliyuncs.com/iris.csv'
schema = 'sepal_length double, sepal_width double, petal_length double, petal_width double, category string'
csvSource = CsvSourceBatchOp()\
    .setFilePath(filePath)\
    .setSchemaStr(schema)\
    .setFieldDelimiter(",")
BatchOperator.collectToDataframe(csvSource)