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 variabileold
èTrue
.row_selection = (age > 20) & (age < 65) & (log(income) > 10)
usa solo osservazioni in cui il valore della variabileage
è compreso tra 20 e 65 e il valore dilog
della variabileincome
è 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