Um mit Daten in einem ML-Projekt arbeiten zu können, müssen diese zuerst geladen werden. Daten können aus einer CSV-Datei, einer XLS-Datei, einer Datenbank, einem Dataset oder einer temporären Tabelle geladen werden. Es gibt zwei Möglichkeiten, Daten in BellaDati ML Studio zu lesen - Zeile für Zeile oder als Stream.

Zeile für Zeile lesen

Beim zeilenweisen Lesen der Daten wird der Inhalt des Zyklus (Abschluss) für jede Zeile der Datei ausgeführt. Für jede Zeile (Zyklus) werden diese Variablen festgelegt:

  • Reihe
  • Werte [n] - gibt den Wert in der n-ten Spalte für die aktuelle Zeile zurück.
  • Spalten [n] - gibt den Namen (Kopfzeile) der n-ten Spalte zurück.
  • Index - gibt die Nummer der Zeile zurück

Aus CSV-Datei lesen

Die Funktion readCSVFile () dient zum Laden von Daten aus einer CSV-Datei. Die Funktion ist wie folgt definiert:

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

Parameter

Die Parameter file und separator sind obligatorisch, die Parameter Escape, Limit und Closure sind optional.

  • Datei - Definiert den Namen der Datei, die gelesen werden soll. Diese Datei muss in das Projekt hochgeladen werden.
  • Trennzeichen - Definiert das Trennzeichen zwischen Werten. Kann Komma, Semikolon usw. sein
  • Escape - Definiert ein Zeichen, das für das Escape von Text verwendet wird.
  • Limit - definiert die Anzahl der Zeilen, die geladen werden.
  • Schließung - Schließung ist ein Codeblock, der für jede Zeile der Datei ausgeführt wird. Der Abschluss muss entweder als Parameter oder als Funktionskörper in geschweiften Klammern geschrieben werden. Daher ist es optional als Parameter, aber im Allgemeinen obligatorisch. Weitere Informationen finden Sie unter Groovy Closure.

Sample usage

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

Dieser Code gibt den Zeilenindex und den Wert der zweiten Spalte für die ersten 10 Zeilen der Datei an die Konsole aus. Nach Beendigung der Schleife wird die Gesamtzahl der Iterationen angezeigt, in diesem Fall 10.

Lesen aus XLS-Datei

Die Funktion readSQL dient zum Laden von Daten aus einer SQL-Datenbank. Diese Funktion verwendet SQL-Verbindungen, die zuvor in BellaDati definiert wurden. Weitere Informationen finden Sie unter Datenquellen.

Die Funktion ist wie folgt definiert:

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

Parameter

Die Parameterdatei ist obligatorisch, die Begrenzung und die Schließung der Parameter ist optional. 
  • Datei - Definiert den Namen der Datei, die gelesen werden soll. Diese Datei muss in das Projekt hochgeladen werden.
  • Limit - definiert die Anzahl der Zeilen, die geladen werden.
  • Schließung - Schließung ist ein Codeblock, der für jede Zeile der Datei ausgeführt wird. Der Abschluss muss entweder als Parameter oder als Funktionskörper in geschweiften Klammern geschrieben werden. Daher ist es optional als Parameter, aber im Allgemeinen obligatorisch. Weitere Informationen finden Sie unter Groovy closures.

Sample usage

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

println rows

Dieser Code gibt den Zeilenindex und den Wert der zweiten Spalte für die ersten 5 Zeilen der Datei an die Konsole aus. Nach Beendigung der Schleife wird die Gesamtzahl der Iterationen angezeigt, in diesem Fall 5.

Lesen aus der SQL-Datenbank

Die Funktion readSQL dient zum Laden von Daten aus einer SQL-Datenbank. Diese Funktion verwendet SQL-Verbindungen, die zuvor in BellaDati definiert wurden. Weitere Informationen finden Sie unter Datenquellen.

Die Funktion ist wie folgt definiert:

 

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

Parameter

Die Parameter id und sql sind obligatorisch, die Parameter Limit und Closure sind optional.

  • id - Definiert die ID der Datenquelle. Sie kann vom Code-Builder festgelegt werden.
  • sql - Definiert die SQL-Abfrage.
  • limit - Definiert die Grenze der Zeilen, die geladen werden.
  • closure - Schließung ist ein Codeblock, der für jede Zeile der Datei ausgeführt wird. Der Abschluss muss entweder als Parameter oder als Funktionskörper in geschweiften Klammern geschrieben werden. Daher ist es optional als Parameter, aber im Allgemeinen obligatorisch. Weitere Informationen finden Sie unter Groovy closures.

Verwendungsbeispiel

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

Dieser Code verwendet die Datenbankverbindung mit ID 1 und lädt alle Spalten für 10 Zeilen von Tabellenkunden.

Lesen aus dem Dataset

Die Funktion readDataset () dient zum Laden von Daten aus einem Dataset. Die Funktion ist wie folgt definiert:

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

Parameter

Die Parameter-ID ist obligatorisch, Parameterbegrenzung und -abschluss sind optional.

  • id - Definiert die ID des Datasets. Es kann vom Code Builder festgelegt werden oder in der URL des Datasets gefunden werden.
  • limit - Definiert die Grenze der Zeilen, die geladen werden.
  • closure - Schließung ist ein Codeblock, der für jede Zeile der Datei ausgeführt wird. Der Abschluss muss entweder als Parameter oder als Funktionskörper in geschweiften Klammern geschrieben werden. Daher ist es optional als Parameter, aber im Allgemeinen obligatorisch. Weitere Informationen finden Sie unter Groovy closures.

Verwendungsbeispiel

readDataset(10,5) {
  println values[0]
  println columns[0]
}

Dieser Code verwendet einen Dataset mit der ID 10 und lädt den Namen und den Wert der ersten Spalte für 5 Zeilen.

Lesen aus der Tabelle

FDie Funktionstabelle () kann zum Laden von Daten aus einer temporären Tabelle verwendet werden, die zuvor im Projekt gespeichert wurde. Die Tabelle ist nur für die aktuelle Sitzung verfügbar. Die Funktion ist wie folgt definiert:

table(String id, Closure<Object> closure)

Parameter

Die Parameter-ID ist obligatorisch, das Schließen von Parametern ist optional.

  • id - Definiert die ID (Name) der Tabelle. Wird beim Erstellen der Tabelle festgelegt.
  • closure - Definiert die ID (Name) der Tabelle. Wird beim Erstellen der Tabelle festgelegt.

Verwendungsbeispiel

table('table') {
  println values[0]
  }

Dieser Code gibt den Wert der ersten Spalte für jede Zeile der Tabelle an die Konsole aus.

Lesen als Stream

Beim Lesen von Daten als Stream werden die Zeilen nicht iteriert, sondern als ein Eingabestrom auf einmal gesendet. In den meisten Fällen ist es besser, Zeilen für Zeilen zu lesen. Wir empfehlen die Verwendung von Streams nur bei Bedarf, z. B. bei einigen Python-Skripts.

Streaming aus einer CSV-Datei

Die Funktion streamCSVFile () wird zum Streaming von Daten aus einer CSV-Datei verwendet. Die Funktion ist wie folgt definiert:

streamCSVFile(String file, String separator, String escape, int limit)

Parameter

Die Parameter file und separator sind obligatorisch, die Parameter escape und limit sind optional.

  • file - Definiert den Namen der Datei, die gelesen werden soll. Diese Datei muss in das Projekt hochgeladen werden.
  • separator - Definiert das Trennzeichen zwischen Werten. Kann Komma, Semikolon usw. sein
  • escape - Definiert ein Zeichen, das für die Escape-Funktion von Text verwendet wird.
  • limit - Definiert die Grenze der Zeilen, die geladen werden.

Verwendungsbeispiel

println org.apache.commons.io.IOUtils.toString(streamCSVFile('train_v2.csv',','))

Dieser Code druckt alle Werte aus der Datei, getrennt durch ein Komma.

Streaming aus einer XLS-Datei

Die Funktion streamXLSFile () wird zum Streaming von Daten aus einer XLS-Datei verwendet. Die Funktion ist wie folgt definiert:

streamXLSFile(String file, int limit)

Parameter

Die Parameterdatei ist obligatorisch, die Parameterbegrenzung ist optional.

  • file - Definiert den Namen der Datei, die gelesen werden soll. Diese Datei muss in das Projekt hochgeladen werden.
  • limit - Definiert die Anzahl der Zeilen, die geladen werden sollen.

Verwendungsbeispiel

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

Dieser Code druckt die ersten fünf Zeilen der Datei, wobei die Werte durch ein Komma getrennt sind.

Streaming aus SQL-Datenbank

Die Funktion streamXLSFile () wird zum Streaming von Daten aus einer XLS-Datei verwendet. Die Funktion ist wie folgt definiert:

streamSQL(Long id, String sql, int limit)

Parameter

Parameter id id zwingend.

  • id - Definiert die ID des Datasets. Es kann vom Code Builder festgelegt werden oder in der URL des Datasets gefunden werden.

Verwendungsbeispiel

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

Dieser Code druckt die ersten fünf Zeilen der Tabelle, wobei die Werte durch ein Komma getrennt sind.

Streaming aus Dataset

Die Funktion streamDataset () wird zum Streaming von Daten aus einem Dataset verwendet. Die Funktion ist wie folgt definiert:

streamDataset(Integer id)

Parameter

Die Parameter-ID ist obligatorisch.

  • id - Definiert die ID der Datenquelle. Sie kann vom Code-Builder festgelegt werden.

Verwendungsbeispiel

println org.apache.commons.io.IOUtils.toString(streamDataset(1))

Dieser Code druckt alle Zeilen aus dem Dataset

Streaming von der Tabelle

Die Funktion streamTable () kann zum Streaming von Daten aus einer temporären Tabelle verwendet werden, die zuvor im Projekt gespeichert wurde. Die Tabelle ist nur für die aktuelle Sitzung verfügbar. Die Funktion ist wie folgt definiert:

streamTable(Integer id)

Parameter

Die Parameter-ID ist obligatorisch.

  • id -Definiert die ID (Name) der Tabelle. Wird beim Erstellen der Tabelle festgelegt.

Verwendungsbeispiel

println org.apache.commons.io.IOUtils.toString(streamTable('table'))

Dieser Code druckt alle Zeilen aus der Tabelle.

  • No labels