Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Sv translation
languageja

MLプロジェクトでデータを操作するには、まずデータをロードする必要があります。データは、CSVファイル、XLSファイル、データベース、データセット、一時テーブルからロードできます。 BellaDati ML Studioで、行ごとまたはストリームとしてデータを読み取る方法は2つあります。

行ごとの読み取り

行ごとにデータを読み取る場合、サイクルの内容(クロージャー)がファイルの各行に対して実行されます。行(サイクル)ごとに、これらの変数が設定されます:

  • row
  • values[n]現在の行のn番目の列の値を返します。
  • columns[n]n番目の列の名前(ヘッダー)を返します。
  • index行の番号を返します。

CSVファイルからの読み取り

readCSVFile()関数は、CSVファイルからデータをロードするために使用されています。関数は次のように定義されます:

Code Block
languagegroovy
readCSVFile(String file, String separator, String escape, int limit, Closure<Object> closure)

パラメーター

パラメーター「file」「separator」は必須で、パラメーター「escape」「limit」「closure」は任意です。

  • file読み込むファイルの名前を定義します。このファイルをプロジェクトにアップロードする必要があります。
  • separator値間の区切り文字(カンマ、セミコロンなど)を定義します。
  • escape - テキストのエスケープに使用される文字を定義します。
  • limit - ロードされる行の制限を定義します。
  • closure - クロージャーは、ファイルの各行に対して実行されるコードのブロックです。クロージャーはパラメーターとして、または関数の本体として中括弧で記述する必要があります。したがって、パラメーターとしてオプションですが、一般的に必須です。詳細については、クロージャーは、ファイルの各行に対して実行されるコードのブロックです。クロージャーはパラメーターとして、または関数の本体として中括弧で記述する必要があります。従って、パラメーターとしてオプションですが、一般的に必須です。詳細については、Groovy closuresを参照してください。

使用例

Code Block
languagegroovy
linenumberstrue
def rows = 0
readCSVFile('file.csv', ',', '', 10) {
  rows++
  println index
  println values[1]
}
println rows

このコードは、ファイルの最初の10行の行インデックスと2列目の値をコンソールに出力します。ループの終了後、反復の総数(この場合は10)が表示されます。

XLSファイルからの読み取り

関数readXLSFilereadXLSFile()は、XLSファイルからデータをロードするために使用されます。関数は次のように定義されます関数は、XLSファイルからデータをロードするために使用されます。関数は次のように定義されます:

Code Block
languagegroovy
readXLSFile(String file, int limit, Closure<Object> closure)

パラメーター

パラメーター「file 」は必須で、パラメーター「limit」「closure 」は任意です。

  • file - 読込対象ファイル名を定義します。このファイルはプロジェクトへアップロードする必要があります。読み込むファイルの名前を定義します。このファイルをプロジェクトにアップロードする必要があります。
  • limit - 読込対象行の制限を定義する。 ロードされる行の制限を定義します。
  • closure - クロージャはファイルの各行のごとに実行されるコードブロックです。クロージャはパラメーターまたは中括弧で関数の本体として書込みがあります。基本的は必須ですが、任意のパラメーターとして設定することができます。詳細は、Groovyクロージャ クロージャーは、ファイルの各行に対して実行されるコードのブロックです。クロージャーは、パラメーターとして、または関数の本体として中括弧で記述する必要があります。従って、パラメータとしてオプションですが、一般的に必須です。詳細については、Groovyクロージャーを参照してください。

使用例

Code Block
languagegroovy
linenumberstrue
def rows = 0
readXLSFile('samplexls.xls', 5){
  rows++
  println index
  println values[1]
}

println rows

このコードはファイルの先頭5行の2番目の列の行インデックスと値をコンソールに印刷します。

ループを終了した後、総計反復回数を表示ます。この場合には5になります。このコードは、ファイルの最初の5行の行インデックスと2列目の値をコンソールに出力します。ループの終了後、反復の総数(この場合は5)が表示されます。

SQL

データベースからの読込

データベースからの読み取り

readSQL関数は、SQLデータベースからデータをロードするために使用されます。この関数は、以前にBellaDatiで定義されたSQL接続を使用します。詳細については、Data Sourcesを参照してください。

関数は次のように定義されます:

 

readSQLの関数の目的はSQLデータベースからデータを読込する為です。

この関数はBellaDati に事前に定義されているSQL接続を使用します。

詳細はデータソースをご参照ください。

この関数は以下のように定義されます。

Code Block
languagegroovy
readSQL(Long id, String sql, int limit, Closure<Object> closure)

パラメーター

パラメーター「id」「sql」は必須で、パラメーター「limit」「closure」は任意です。

  • idデータソースのIDを定義します。データソースのIDを定義します。コードビルダーで設定できます。
  • sql - SQLクエリを定義します。 SQLクエリーを定義します。
  • limit -  読込対象行の制限を定義する。ロードされる行の制限を定義します。
  • closure - クロージャはファイルの各行のごとに実行されるコードブロックです。クロージャはパラメーターまたは中括弧で関数の本体として書込みがあります。基本的は必須ですが、任意のパラメーターとして設定することができます。詳細は、Groovyクロージャ クロージャーは、ファイルの各行に対して実行されるコードのブロックです。クロージャーは、パラメーターとして、または関数の本体として中括弧で記述する必要があります。従って、パラメーターとしてオプションですが、一般的に必須です。詳細については、Groovyクロージャーを参照してください。

使用例

Code Block
languagegroovy
linenumberstrue
readSQL(1, 'select * from customers', 10) {
  println values[0]
  rows++
  println columns[0]
	}
println rows

このコードはID 1のデータベース接続を使用することで得意先テーブルから10行分で全てのコラムを読み込みます。このコードは、ID 1のデータベース接続を使用し、顧客テーブルから10行のすべての列をロードします。

データセットからの読込

データセットからの読み取り

readDataset()の関数の目的はデータセットからデータを読込する為です。 

この関数は以下のように定義されます。

Code Block
languagegroovy
readDataset(Integer id, int limit, Closure<Object> closure)

パラメーター

パラメーター「id」は必須で、パラメーター「limit」「closure」は任意です。

  • id - データセットのIDを定義します。コードビルダーに設定されることも、データセットのURLに設定することもできます
  • limit - 読込対象行の制限を定義する。
  • closure - クロージャはファイルの各行のごとに実行されるコードブロックです。クロージャはパラメーターまたは中括弧で関数の本体として書込みがあります。基本的は必須ですが、任意のパラメーターとして設定することができます。詳細は、Groovyクロージャを参照してください。

使用例

Code Block
languagegroovy
linenumberstrue
readDataset(10,5) {
  println values[0]
  println columns[0]
}

このコードはID 10のデータセットを使用することで5行分で一番目のコラムの名称・値を読み込みます。

テーブルからの読込

table()の関数の目的は事前にプロジェクトに保存された一時テーブルからデータを読込する為です。このテーブルは現行のセッションにのみ使用できます。この関数は以下のように定義されます。

Code Block
languagegroovy
table(String id, Closure<Object> closure)

パラメーター

パラメーター「id」は必須で、パラメーター「closure」は任意です。

  • id - テーブルのID(名称)を定義します。テーブルを作成する時にIDを設定します。
  • closure - クロージャはファイルの各行のごとに実行されるコードブロックです。クロージャはパラメーターまたは中括弧で関数の本体として書込みがあります。基本的は必須ですが、任意のパラメーターとして設定することができます。詳細は、Groovyクロージャを参照してください。

使用例

Code Block
languagegroovy
linenumberstrue
table('table') {
  println values[0]
  }

このコードはファイルの各行毎の1番目の列の値をコンソールに印刷します。

ストリームとして読み込む
Anchor
stream
stream

ストリームとしてデータを読み込む場合、行は反復されませんが、その代わりに入力ストリームとして一度に送信します。通常は1行ずつ読むのが良いです。Pythonスクリプトなど必要に応じてストリームだけを利用すると提案します。

CSVファイルからのストリーム

streamCSVFile()の関数の目的はCSVファイルからデータをストリームする為です。この関数は以下のように定義されます。

Code Block
languagegroovy
streamCSVFile(String file, String separator, String escape, int limit)

パラメーター

パラメーター「fileseparator 」は必須で、パラメーター「escape」「limit 」は任意です。

  • file - 読込対象ファイル名を定義します。このファイルはプロジェクトへアップロードする必要があります。
  • separator - コンマ、セミコロンなどの各値の間に区切り文字を定義します。
  • escape - テキストのエスケープ文字を定義します。
  • limit - 読込対象行の制限を定義する。

使用例

Code Block
languagegroovy
linenumberstrue
println org.apache.commons.io.IOUtils.toString(streamCSVFile('train_v2.csv',','))

このコードはコンマで区切りられるファイルの全ての値を印刷します。

XLSファイルからのストリーム

streamXLSFile()の関数の目的はXLSファイルからデータをストリームする為です。この関数は以下のように定義されます。

Code Block
languagegroovy
streamXLSFile(String file, int limit)

パラメーター

パラメーター「fileは必須で、パラメーター「limit 」は任意です。

  • file - 読込対象ファイル名を定義します。このファイルはプロジェクトへアップロードする必要があります。
  • limit - 読込対象行の制限を定義する。

使用例

Code Block
languagegroovy
linenumberstrue
println org.apache.commons.io.IOUtils.toString(streamXLSFile('samplexls.xls',5))

このコードはコンマで区切りられるファイルの先頭5行を印刷します。

SQLデータベースからのストリーム

streamXLSFile()の関数の目的はXLSファイルからデータをストリームする為です。この関数は以下のように定義されます。

Code Block
languagegroovy
streamSQL(Long id, String sql, int limit)

パラメーター

パラメーター「id 」は必須です。

  • id - データセットのIDを定義します。コードビルダーに設定されることも、データセットのURLに設定することもできます

使用例

Code Block
languagegroovy
linenumberstrue
println org.apache.commons.io.IOUtils.toString(streamSQL(1, 'select * from table',5))

このコードはコンマで区切りられるテーブルの先頭5行を印刷します。

データセットからのストリーム

streamDataset()の関数の目的はデータセットからデータをストリームする為です。この関数は以下のように定義されます。

Code Block
languagegroovy
streamDataset(Integer id)

パラメーター

パラメーター「id」は必須です。

  • id - データソースのIDを定義します。コードビルダーに設定されます。

使用例

Code Block
languagegroovy
linenumberstrue
println org.apache.commons.io.IOUtils.toString(streamDataset(1))

このコードがデータセットから全ての列を印刷します。

テーブルからのストリーム

streamTable()関数の目的はプロジェクトに事前に保存された一時テーブルからデータをストリームする為です。このテーブルは現行のセッションだけに利用可能です。この関数は以下のように定義されます。

Code Block
languagegroovy
streamTable(Integer id)

パラメーター

パラメーター「id」は必須です。

  • id - テーブルのID(名称)を定義します。テーブルを作成する時にIDを設定します。

使用例

Code Block
languagegroovy
linenumberstrue
println org.apache.commons.io.IOUtils.toString(streamTable('table'))

このコードがテーブルから全ての列を印刷します。

...