microsoftml.rx_featurize: Trasformazione dei dati per le fonti di dati

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)

Descrzione

Trasforma i dati da un insieme di dati di ingresso a un insieme di dati di output.

Arguments

Dati

Un oggetto sorgente dati revoscalepy , un data frame o il percorso verso un .xdf file.

output_data

Output di testo o nome file xdf o con RxDataSource capacità di scrittura in cui memorizzare dati trasformati. Se nessuno, viene restituito un data frame. Il valore predefinito è None.

sovrascrivere

Se True, un esistente output_data è sovrascritto; se False un esistente output_data non è sovrascritto. Il valore predefinito è False.

data_threads

Un intero che specifica il grado desiderato di parallelismo nella pipeline dati. Se nessuno, il numero di thread utilizzati è determinato internamente. Il valore predefinito è None.

random_seed

Specifica il valore di inizializzazione casuale. Il valore predefinito è None.

max_slots

Slot massimi da restituire per colonne a valore vettoriale (<=0 per restituire tutto).

ml_transforms

Specifica un elenco di trasformazioni MicrosoftML da eseguire sui dati prima del training o Nessuna se non devono essere eseguite trasformazioni. Per le trasformazioni supportate, vedere featurize_text, categoricale categorical_hash. Queste trasformazioni vengono eseguite dopo le trasformazioni Python specificate. Il valore predefinito è None.

ml_transform_vars

Specifica un vettore di caratteri di nomi di ml_transforms da utilizzare in o Nessuno se non è necessario usare nessuno. Il valore predefinito è None.

row_selection

NON SUPPORTATO. Specifica le righe (osservazioni) del set di dati che devono essere usate dal modello con il nome di una variabile logica del set di dati (tra virgolette) o con un'espressione logica usando variabili nel set di dati. Per esempio:

  • row_selection = "old" userà solo osservazioni in cui il valore della variabile old è True.

  • row_selection = (age > 20) & (age < 65) & (log(income) > 10) usa solo osservazioni in cui il valore della age variabile è compreso tra 20 e 65 e il valore della logincome variabile è maggiore di 10.

La selezione delle righe viene eseguita dopo l'elaborazione di tutte le trasformazioni dei dati (vedere gli transforms argomenti o transform_function). Come per tutte le espressioni, row_selection può essere definito all'esterno della chiamata di funzione usando la expression funzione .

Trasforma

NON SUPPORTATO. Espressione del form che rappresenta il primo round delle trasformazioni delle variabili. Come per tutte le espressioni, transforms (o row_selection) può essere definito all'esterno della chiamata di funzione usando la expression funzione . Il valore predefinito è None.

transform_objects

NON SUPPORTATO. Elenco denominato che contiene oggetti a cui è possibile fare riferimento da transforms, transform_functione row_selection. Il valore predefinito è None.

transform_function

Funzione di trasformazione della variabile. Il valore predefinito è None.

transform_variables

Vettore di caratteri delle variabili del set di dati di input necessario per la funzione di trasformazione. Il valore predefinito è None.

transform_packages

NON SUPPORTATO. Vettore di caratteri che specifica pacchetti Python aggiuntivi (al di fuori di quelli specificati in RxOptions.get_option("transform_packages")) da rendere disponibili e precaricati per l'uso nelle funzioni di trasformazione delle variabili. Ad esempio, quelli definiti in modo esplicito nelle funzioni revoscalepy tramite i relativi transforms argomenti e transform_function o quelli definiti in modo implicito tramite i rispettivi formula argomenti o row_selection . L'argomento transform_packages può anche essere Nessuno, a indicare che non vengono precaricati pacchetti esterni RxOptions.get_option("transform_packages") .

transform_environment

NON SUPPORTATO. Ambiente definito dall'utente da usare come padre per tutti gli ambienti sviluppati internamente e usati per la trasformazione dei dati delle variabili. Se transform_environment = None, viene utilizzato un nuovo ambiente "hash" con il genitore revoscalepy.baseenv al suo posto Il valore predefinito è Nessuno.

blocks_per_read

Specifica il numero di blocchi da leggere per ogni blocco di dati letto dall'origine dati.

report_progress

Valore intero che specifica il livello di creazione di report sullo stato di elaborazione delle righe:

  • 0: non viene segnalato alcun avanzamento.

  • 1: il numero di righe elaborate viene stampato e aggiornato.

  • 2: vengono segnalate le righe elaborate e le tempistiche.

  • 3: vengono segnalate le righe elaborate e tutte le tempistiche.

Il valore predefinito è 1.

verbose

Valore intero che specifica la quantità di output desiderata. Se 0, non viene stampato alcun output dettagliato durante i calcoli. Valori interi da 1 per 4 fornire quantità crescenti di informazioni. Il valore predefinito è 1.

compute_context

Imposta il contesto in cui vengono eseguiti i calcoli, specificati con una revoscalepy valida. RxComputeContext. Attualmente locale e revoscalepy. Sono supportati i contesti di calcolo RxInSqlServer.

Returns

Un data frame o una revoscalepy. L'oggetto RxDataSource rappresenta i dati di output creati.

Esempio

'''
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)

Output:

  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