microsoftml.rx_featurize: Datentransformation für Datenquellen

Usage

microsoftml.rx_featurize(data: typing.Union[revoscalepy.datasource.RxDataSource.RxDataSource,
    pandas.core.frame.DataFrame],
    output_data: typing.Union[revoscalepy.datasource.RxDataSource.RxDataSource,
    str] = None, overwrite: bool = False,
    data_threads: int = None, random_seed: int = None,
    max_slots: int = 5000, ml_transforms: list = None,
    ml_transform_vars: list = None, row_selection: str = None,
    transforms: dict = None, transform_objects: dict = None,
    transform_function: str = None,
    transform_variables: list = None,
    transform_packages: list = None,
    transform_environment: dict = None, blocks_per_read: int = None,
    report_progress: int = None, verbose: int = 1,
    compute_context: revoscalepy.computecontext.RxComputeContext.RxComputeContext = None)

Description

Transformiert Daten von einem Eingabedatensatz in einen Ausgabedatensatz.

Argumente

data

Ein revoscalepy Datenquellenobjekt, ein Datenrahmen oder der Pfad zu einer .xdf Datei.

output_data

Geben Sie Text oder XDF-Dateinamen aus oder verfügen RxDataSource über Schreibfunktionen, um transformierte Daten zu speichern. Wenn keine, wird ein Datenframe zurückgegeben. Der Standardwert ist Keiner.

überschreiben

Wenn True, wird ein Existent output_data überschrieben; wenn False ein Existent output_data nicht überschrieben wird. Der Standardwert ist False.

data_threads

Eine Ganzzahl, die den gewünschten Grad an Parallelität in der Datenpipeline angibt. Wenn keine, wird die Anzahl der verwendeten Gewinde intern bestimmt. Der Standardwert ist Keiner.

random_seed

Gibt den zufälligen Ausgangswert an. Der Standardwert ist Keiner.

max_slots

Maximale Slots für vektorwertige Spalten (<=0, um alle zurückzugeben).

ml_transforms

Gibt eine Liste der MicrosoftML-Transformationen an, die vor dem Training oder none für die Daten ausgeführt werden sollen, wenn keine Transformationen ausgeführt werden sollen. Siehe featurize_text, categoricalund categorical_hash, für Transformationen, die unterstützt werden. Diese Transformationen werden nach allen angegebenen Python-Transformationen ausgeführt. Der Standardwert ist Keiner.

ml_transform_vars

Gibt einen Zeichenvektor von Variablennamen an, die verwendet ml_transforms werden sollen, oder "None ", wenn keine verwendet werden soll. Der Standardwert ist Keiner.

row_selection

NICHT UNTERSTÜTZT. Gibt die Zeilen (Beobachtungen) aus dem Dataset an, die vom Modell mit dem Namen einer logischen Variablen aus dem Dataset (in Anführungszeichen) oder mit einem logischen Ausdruck mithilfe von Variablen im Dataset verwendet werden sollen. Beispiel:

  • row_selection = "old" verwendet nur Beobachtungen, in denen der Wert der Variablen old lautet True.

  • row_selection = (age > 20) & (age < 65) & (log(income) > 10) verwendet nur Beobachtungen, in denen der Wert der age Variablen zwischen 20 und 65 liegt und der Wert der logincome Variablen größer als 10 ist.

Die Zeilenauswahl erfolgt nach der Verarbeitung von Datentransformationen (siehe die Argumente transforms oder transform_function). Wie bei allen Ausdrücken kann außerhalb des Funktionsaufrufs row_selection mithilfe der expression Funktion definiert werden.

Verwandelt

NICHT UNTERSTÜTZT. Ein Ausdruck des Formulars, das die erste Runde von Variablentransformationen darstellt. Wie bei allen Ausdrücken kann (oder transforms) außerhalb des Funktionsaufrufs row_selection mithilfe der expression Funktion definiert werden. Der Standardwert ist Keiner.

transform_objects

NICHT UNTERSTÜTZT. Eine benannte Liste, die Objekte enthält, auf die von transforms, und transform_function.row_selection Der Standardwert ist Keiner.

transform_function

Die Variable Transformationsfunktion. Der Standardwert ist Keiner.

transform_variables

Ein Zeichenvektor von Eingabedatensatzvariablen, die für die Transformationsfunktion erforderlich sind. Der Standardwert ist Keiner.

transform_packages

NICHT UNTERSTÜTZT. Ein Zeichenvektor, der zusätzliche Python-Pakete angibt (außerhalb der in ) RxOptions.get_option("transform_packages")zur Verfügung gestellt und für die Verwendung in Variablentransformationsfunktionen vorab geladen werden soll. Beispielsweise werden diejenigen, die explizit in Revoscalepy-Funktionen über ihre transforms und transform_function Argumente oder implizit über ihre formula Argumente row_selection definiert wurden, definiert. Das transform_packages Argument kann auch "None" sein, das angibt, dass keine Pakete vorgeladen RxOptions.get_option("transform_packages") werden.

transform_environment

NICHT UNTERSTÜTZT. Eine benutzerdefinierte Umgebung, die als übergeordnetes Element für alle Umgebungen dient, die intern entwickelt und für die Variable Datentransformation verwendet werden. Wenn transform_environment = None, wird stattdessen eine neue "Hash"-Umgebung mit übergeordneter revoscalepy.baseenv verwendet. Der Standardwert ist None.

blocks_per_read

Gibt die Anzahl der zu lesenden Blöcke für jeden Datenabschnitt an, der aus der Datenquelle gelesen werden soll.

report_progress

Ein ganzzahliger Wert, der die Berichtsebene für den Fortschritt der Zeilenverarbeitung angibt:

  • 0: Es wird kein Fortschritt gemeldet.

  • 1: Die Anzahl der verarbeiteten Zeilen wird gedruckt und aktualisiert.

  • 2: Verarbeitete Zeilen und Anzeigedauern werden gemeldet.

  • 3: Verarbeitete Zeilen und alle Anzeigedauern werden gemeldet.

Der Standardwert ist 1.

verbose

Ein ganzzahliger Wert, der die gewünschte Ausgabemenge angibt. Wird 0bei Berechnungen keine ausführliche Ausgabe gedruckt. Ganzzahlige Werte von 1 bis hin zu 4 steigenden Informationsmengen. Der Standardwert ist 1.

compute_context

Legt den Kontext fest, in dem Berechnungen ausgeführt werden, die mit einem gültigen Revoscalepy angegeben werden. RxComputeContext. Derzeit lokal und revoscalepy. RxInSqlServer-Computekontexte werden unterstützt.

Rückgaben

Ein Datenrahmen oder ein Revoscalepy. Das Objekt RxDataSource repräsentiert die erstellten Ausgabedaten.

Example

'''
Example with rx_featurize.
'''
import numpy
import pandas
from microsoftml import rx_featurize, categorical

# rx_featurize basically allows you to access data from the MicrosoftML transforms
# In this example we'll look at getting the output of the categorical transform
# Create the data
categorical_data = pandas.DataFrame(data=dict(places_visited=[
                "London", "Brunei", "London", "Paris", "Seria"]),
                dtype="category")
                
print(categorical_data)

# Invoke the categorical transform
categorized = rx_featurize(data=categorical_data,
                           ml_transforms=[categorical(cols=dict(xdatacat="places_visited"))])

# Now let's look at the data
print(categorized)

Ausgabe:

  places_visited
0         London
1         Brunei
2         London
3          Paris
4          Seria
Beginning processing data.
Rows Read: 5, Read Time: 0, Transform Time: 0
Beginning processing data.
Beginning processing data.
Rows Read: 5, Read Time: 0, Transform Time: 0
Beginning processing data.
Elapsed time: 00:00:00.0521300
Finished writing 5 rows.
Writing completed.
  places_visited  xdatacat.London  xdatacat.Brunei  xdatacat.Paris  \
0         London              1.0              0.0             0.0   
1         Brunei              0.0              1.0             0.0   
2         London              1.0              0.0             0.0   
3          Paris              0.0              0.0             1.0   
4          Seria              0.0              0.0             0.0   

   xdatacat.Seria  
0             0.0  
1             0.0  
2             0.0  
3             0.0  
4             1.0