Condividi tramite


TransformationMixin Classe

Questa classe offre funzionalità di trasformazione per i set di dati di output.

Ereditarietà
builtins.object
TransformationMixin

Costruttore

TransformationMixin()

Metodi

read_delimited_files

Trasformare il set di dati di output in un set di dati tabulare leggendo tutti gli output come file delimitati.

read_parquet_files

Trasformare il set di dati di output in un set di dati tabulare leggendo tutti gli output come file Parquet.

Il set di dati tabulare viene creato analizzando i file parquet a cui punta l'output intermedio.

read_delimited_files

Trasformare il set di dati di output in un set di dati tabulare leggendo tutti gli output come file delimitati.

read_delimited_files(include_path=False, separator=',', header=PromoteHeadersBehavior.ALL_FILES_HAVE_SAME_HEADERS, partition_format=None, path_glob=None, set_column_types=None)

Parametri

include_path
bool
Necessario

Boolean per mantenere le informazioni sul percorso come colonna nel set di dati. Il valore predefinito è False. Questo è utile quando si legge più file e si vuole sapere quale file ha origine un determinato record o mantenere informazioni utili nel percorso file.

separator
str
Necessario

Separatore usato per dividere le colonne.

header
PromoteHeadersBehavior
Necessario

Controlla la modalità di promozione delle intestazioni di colonna durante la lettura dai file. Le impostazioni predefinite presuppongono che tutti i file abbiano la stessa intestazione.

partition_format
str
Necessario

Specificare il formato di partizione del percorso. Il valore predefinito è Nessuna. Le informazioni di partizione di ogni percorso verranno estratte in colonne in base al formato specificato. La parte di formato '{column_name}' crea una colonna stringa e '{column_name:y/MM/dd/HH/mm/ss}' crea una colonna datetime, dove 'y', 'MM', 'dd', 'HH', 'mm' e 'ss' vengono usati per estrarre anno, mese, giorno, ora e secondo per il tipo datetime. Il formato deve iniziare dalla posizione della prima chiave di partizione fino alla fine del percorso del file. Ad esempio, dato il percorso '.. /Accounts/2019/01/01/data.parquet' dove la partizione è in base al nome e all'ora del reparto, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.parquet' crea una colonna stringa 'Department' con il valore 'Accounts' e una colonna datetime 'PartitionDate' con il valore '2019-01-01'.

path_glob
str
Necessario

Modello glob-like per filtrare i file che verranno letti come file delimitati. Se impostato su Nessuno, tutti i file verranno letti come file delimitati.

Glob è un'espansione del modello di percorso di stile Unix: https://docs.python.org/3/library/glob.html

ex)

  • *.csv :> seleziona i file con estensione file.csv
  • test_.csv * -> seleziona i file con file che iniziano con test_ e ha .csv estensione file
  • /myrootdir/project_one///.txt* :> seleziona i file che sono due sottodirectory approfondite in /myrootdir/project_one/ e dispongono di estensione file .txt

Nota: l'uso del modello * negli alberi di directory di grandi dimensioni può utilizzare un intervallo di tempo inordinato. In generale, per gli alberi di directory di grandi dimensioni, essere più specifici nel modello glob può aumentare le prestazioni.

set_column_types
dict[str, DataType]
Necessario

Un dizionario per impostare il tipo di dati della colonna, dove la chiave è il nome della colonna e il valore è DataType. Le colonne non nel dizionario rimarranno di tipo stringa. Il passaggio di Nessuna comporta alcuna conversione. Le voci per le colonne non trovate nei dati di origine non causano un errore e verranno ignorate.

Restituisce

OutputTabularDatasetConfig Istanza con istruzioni su come convertire l'output in un oggetto TabularDataset.

Tipo restituito

read_parquet_files

Trasformare il set di dati di output in un set di dati tabulare leggendo tutti gli output come file Parquet.

Il set di dati tabulare viene creato analizzando i file parquet a cui punta l'output intermedio.

read_parquet_files(include_path=False, partition_format=None, path_glob=None, set_column_types=None)

Parametri

include_path
bool
Necessario

Boolean per mantenere le informazioni sul percorso come colonna nel set di dati. Il valore predefinito è False. Questo è utile quando si legge più file e si vuole sapere quale file ha origine un determinato record o mantenere informazioni utili nel percorso file.

partition_format
str
Necessario

Specificare il formato di partizione del percorso. Il valore predefinito è Nessuna. Le informazioni di partizione di ogni percorso verranno estratte in colonne in base al formato specificato. La parte di formato '{column_name}' crea una colonna stringa e '{column_name:y/MM/dd/HH/mm/ss}' crea una colonna datetime, dove 'y', 'MM', 'dd', 'HH', 'mm' e 'ss' vengono usati per estrarre anno, mese, giorno, ora e secondo per il tipo datetime. Il formato deve iniziare dalla posizione della prima chiave di partizione fino alla fine del percorso del file. Ad esempio, dato il percorso '.. /Accounts/2019/01/01/data.parquet' dove la partizione è in base al nome e all'ora del reparto, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.parquet' crea una colonna stringa 'Department' con il valore 'Accounts' e una colonna datetime 'PartitionDate' con il valore '2019-01-01'.

path_glob
str
Necessario

Modello simile a glob per filtrare i file che verranno letti come file parquet. Se impostato su Nessuno, tutti i file verranno letti come file parquet.

Glob è un'espansione del modello di percorso di stile Unix: https://docs.python.org/3/library/glob.html

ex)

  • *Parquet :> seleziona i file con estensione parquet
  • test_.parquet* -> seleziona i file con nomi file che iniziano con test_ e ha estensione del file parquet
  • /myrootdir/project_one///. parquet* :> seleziona i file che sono due sottodirectory profonde in /myrootdir/project_one/ e hanno estensione del file parquet

Nota: l'uso del modello * negli alberi di directory di grandi dimensioni può utilizzare un intervallo di tempo inordinato. In generale, per gli alberi di directory di grandi dimensioni, essere più specifici nel modello glob può aumentare le prestazioni.

set_column_types
dict[str, DataType]
Necessario

Un dizionario per impostare il tipo di dati della colonna, dove la chiave è il nome della colonna e il valore è DataType. Le colonne non nel dizionario rimarranno caricate dal file parquet. Il passaggio di Nessuna comporta alcuna conversione. Le voci per le colonne non trovate nei dati di origine non causano un errore e verranno ignorate.

Restituisce

OutputTabularDatasetConfig Istanza con istruzioni su come convertire l'output in un oggetto TabularDataset.

Tipo restituito