Condividi tramite


microsoftml.rx_featurize: trasformazione dati per origini dati

Utilizzo

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)

Descrizione

Trasforma i dati da un set di dati di input a un set di dati di output.

Argomenti

data

Oggetto origine dati revoscalepy, frame di dati o percorso di un file .xdf.

output_data

Testo di output o nome del file xdf o RxDataSource con funzionalità di scrittura in cui archiviare i dati trasformati. Se l'impostazione di questo argomento è None, viene restituito un frame di dati. Il valore predefinito è None.

overwrite

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

data_threads

Numero intero che specifica il grado di parallelismo desiderato nella pipeline di dati. Se il valore di questo argomento è None, il numero di thread usati viene determinato internamente. Il valore predefinito è None.

random_seed

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

max_slots

Numero massimo di slot da restituire per le colonne con valori vettoriali (<=0 per restituirli tutti).

ml_transforms

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

ml_transform_vars

Specifica un vettore di caratteri di nomi di variabili da usare in ml_transforms o None se non è necessario usarne alcuno. Il valore predefinito è None.

row_selection

NON SUPPORTATO. Specifica le righe (osservazioni) dal set di dati che devono essere usate dal modello con il nome di una variabile logica dal set di dati (tra virgolette) o con un'espressione logica tramite variabili nel set di dati. Ad 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 variabile age è compreso tra 20 e 65 e il valore di log della variabile income è maggiore di 10.

La selezione delle righe viene eseguita dopo l'elaborazione di eventuali trasformazioni dei dati. Vedere gli argomenti transforms o transform_function. Analogamente a tutte le espressioni, è possibile definire row_selection all'esterno della chiamata alla funzione usando la funzione expression.

trasformazioni

NON SUPPORTATO. Espressione con un formato che rappresenta il primo ciclo di trasformazioni delle variabili. Analogamente a tutte le espressioni, è possibile definire transforms o row_selection all'esterno della chiamata di funzione usando la funzione expression. Il valore predefinito è None.

transform_objects

NON SUPPORTATO. Elenco denominato che contiene oggetti a cui transforms, transform_function e row_selection possono fare riferimento. 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 altri pacchetti Python, oltre a 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 argomenti transforms e transform_function o quelli definiti in modo implicito tramite i relativi argomenti formula o row_selection. L'argomento transform_packages può anche essere NoneRxOptions.get_option("transform_packages"), che indica che non vengono precaricati pacchetti esterni a .

transform_environment

NON SUPPORTATO. Ambiente definito dall'utente da usare come elemento padre di tutti gli ambienti sviluppati internamente e usati per la trasformazione dei dati delle variabili. Se transform_environment = None, viene usato un nuovo ambiente "hash" con revoscalepy.baseenv padre. 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 a 4 per fornire quantità crescenti di informazioni. Il valore predefinito è 1.

compute_context

Imposta il contesto in cui vengono eseguiti i calcoli, specificato con un revoscalepy.RxComputeContext valido. Sono attualmente supportati contesti di calcolo locali e revoscalepy.RxInSqlServer.

Restituisce

Frame di dati o oggetto revoscalepy.RxDataSource che rappresenta i dati di output creati.

Vedi anche

rx_predict, revoscalepy.rx_data_step, revoscalepy.rx_import.

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