TabularDataset Clase
Representa un conjunto de datos tabulares que se va a usar en Azure Machine Learning.
Un objeto TabularDataset define una serie de operaciones inmutables que se evalúan de forma diferida para cargar datos del origen de datos en una representación tabular. Los datos no se cargan desde el origen hasta que se pide a TabularDataset que entregue los datos.
TabularDataset se crea mediante métodos como from_delimited_files de la clase TabularDatasetFactory.
Para más información, consulte el artículo Incorporación de & registrar conjuntos de datos. Para empezar a trabajar con un conjunto de datos tabulares, consulte https://aka.ms/tabulardataset-samplenotebook.
Inicialice un objeto TabularDataset.
Este constructor no se supone que se invoque directamente. El conjunto de datos está diseñado para crearse mediante TabularDatasetFactory la clase .
- Herencia
-
TabularDataset
Constructor
TabularDataset()
Comentarios
Se puede crear un objeto TabularDataset a partir de archivos CSV, TSV y Parquet, o a partir de una consulta SQL mediante los métodos from_*
de la clase TabularDatasetFactory. Puede realizar operaciones de creación de subconjuntos en un objeto TabularDataset, como dividir, omitir y filtrar registros.
El resultado de la creación de subconjuntos siempre es uno o varios objetos TabularDataset nuevos.
También puede convertir un objeto TabularDataset a otros formatos, como un DataFrame de Pandas. La carga de datos real se produce cuando se solicita a TabularDataset que entregue los datos a otro mecanismo de almacenamiento (por ejemplo, un DataFrame de Pandas o un archivo CSV).
El objeto TabularDataset se puede usar como entrada de una ejecución de experimento. También se puede registrar en el área de trabajo con un nombre especificado y recuperarse con ese nombre más adelante.
Métodos
download |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Descarga los flujos de archivos definidos por el conjunto de datos en la ruta de acceso local. |
drop_columns |
Quita las columnas especificadas del conjunto de datos. Si se descarta una columna de serie temporal, también se eliminarán las funcionalidades correspondientes para el conjunto de datos devuelto. |
filter |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Filtra los datos, dejando solo los registros que coinciden con la expresión especificada. |
get_profile |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Obtiene el perfil de datos de la última ejecución de perfil enviada para este o el mismo conjunto de datos en el área de trabajo. |
get_profile_runs |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Devuelve las ejecuciones de perfil anteriores asociadas a este o el mismo conjunto de datos en el área de trabajo. |
keep_columns |
Conserva las columnas especificadas y elimina todas las demás del conjunto de datos. Si se descarta una columna de serie temporal, también se eliminarán las funcionalidades correspondientes para el conjunto de datos devuelto. |
mount |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Crea un administrador de contexto para montar flujos de archivos definidos por el conjunto de datos como archivos locales. |
partition_by |
Los datos con particiones se copiarán y se mostrarán en el destino especificado por el destino. Crea el conjunto de datos a partir de la ruta de acceso de datos de salida con formato de partición, registre el conjunto de datos si se proporciona el nombre, devuelva el conjunto de datos para la nueva ruta de acceso de datos con particiones.
|
random_split |
Divide los registros del conjunto de datos en dos partes de manera aleatoria y aproximada según el porcentaje especificado. El primer conjunto de datos contiene aproximadamente |
skip |
Omite los registros de la parte superior del conjunto de datos según el recuento especificado. |
submit_profile_run |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Envía una ejecución de experimentación para calcular el perfil de datos. Un perfil de datos puede ser muy útil para comprender los datos de entrada, identificar anomalías y valores que faltan proporcionando información útil sobre los datos, como el tipo de columna, los valores que faltan, etc. |
take |
Toma una muestra de los registros de la parte superior del conjunto de datos según el recuento especificado. |
take_sample |
Toma una muestra aleatoria de registros del conjunto de datos según la probabilidad especificada aproximadamente. |
time_after |
Filtra un objeto TabularDataset con columnas de marca de tiempo después de una hora de inicio especificada. |
time_before |
Filtra un objeto TabularDataset con columnas de marca de tiempo antes de una hora de finalización especificada. |
time_between |
Filtra un objeto TabularDataset entre una hora de inicio y de finalización especificadas. |
time_recent |
Filtra un objeto TabularDataset para que contenga solo la duración (cantidad) especificada de datos recientes. |
to_csv_files |
Convierte el conjunto de datos actual en un objeto FileDataset que contiene archivos CSV. El conjunto de datos resultante contendrá uno o varios archivos CSV, cada uno correspondiente a una partición de datos del conjunto de datos actual. Estos archivos no se materializan hasta que se descargan o se leen. |
to_dask_dataframe |
Nota Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información. Devuelve un DataFrame de Dask que puede leer de forma diferida los datos del conjunto de datos. |
to_pandas_dataframe |
Carga todos los registros del conjunto de datos en un DataFrame de pandas. |
to_parquet_files |
Convierte el conjunto de datos actual en un objeto FileDataset que contiene archivos Parquet. El conjunto de datos resultante contendrá uno o varios archivos Parquet, cada uno correspondiente a una partición de datos del conjunto de datos actual. Estos archivos no se materializan hasta que se descargan o se leen. |
to_spark_dataframe |
Carga todos los registros del conjunto de datos en un DataFrame de Spark. |
with_timestamp_columns |
Define columnas de marca de tiempo para el conjunto de datos. |
download
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Descarga los flujos de archivos definidos por el conjunto de datos en la ruta de acceso local.
download(stream_column, target_path=None, overwrite=False, ignore_not_found=True)
Parámetros
Nombre | Description |
---|---|
stream_column
Requerido
|
Columna de secuencia que se descargará. |
target_path
Requerido
|
Directorio local en el que se descargarán los archivos. Si es None, los datos se descargarán en un directorio temporal. |
overwrite
Requerido
|
Indica si se van a sobrescribir los archivos existentes. El valor predeterminado es False. Los archivos existentes se sobrescribirán si el elemento overwrite está establecido en True; de lo contrario, se producirá una excepción. |
ignore_not_found
Requerido
|
Indica si se debe producir un error en la descarga si no se encuentran algunos archivos a los que apunta el conjunto de datos. El valor predeterminado es True. Se producirá un error en la descarga si se produce un error en la descarga de cualquier archivo por cualquier motivo si ignore_not_found se establece en False; de lo contrario, se registrará una advertencia para los errores de no encontrado y la descarga se realizará correctamente siempre que no se encuentre ningún otro tipo de error. |
Devoluciones
Tipo | Description |
---|---|
Devuelve una matriz de rutas de acceso de archivo para cada archivo descargado. |
drop_columns
Quita las columnas especificadas del conjunto de datos.
Si se descarta una columna de serie temporal, también se eliminarán las funcionalidades correspondientes para el conjunto de datos devuelto.
drop_columns(columns)
Parámetros
Nombre | Description |
---|---|
columns
Requerido
|
Nombre o lista de nombres de las columnas que se van a quitar. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto TabularDataset con las columnas especificadas descartadas. |
filter
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Filtra los datos, dejando solo los registros que coinciden con la expresión especificada.
filter(expression)
Parámetros
Nombre | Description |
---|---|
expression
Requerido
|
La expresión que se va a evaluar. |
Devoluciones
Tipo | Description |
---|---|
Conjunto de datos modificado (no registrado). |
Comentarios
Las expresiones se inician indexando el conjunto de datos con el nombre de una columna. Admiten una variedad de funciones y operadores, y se pueden combinar mediante operadores lógicos. La expresión resultante se evaluará de forma diferida para cada registro cuando se produzca una extracción de datos y no cuando se define.
dataset['myColumn'] > dataset['columnToCompareAgainst']
dataset['myColumn'].starts_with('prefix')
get_profile
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Obtiene el perfil de datos de la última ejecución de perfil enviada para este o el mismo conjunto de datos en el área de trabajo.
get_profile(workspace=None)
Parámetros
Nombre | Description |
---|---|
workspace
Requerido
|
Área de trabajo donde se envió la ejecución del perfil. El valor predeterminado es el área de trabajo de este conjunto de datos. Obligatorio si el conjunto de datos no está asociado a un área de trabajo. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace para más información sobre las áreas de trabajo. |
Devoluciones
Tipo | Description |
---|---|
Resultado del perfil de la última ejecución de perfil de tipo DatasetProfile. |
get_profile_runs
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Devuelve las ejecuciones de perfil anteriores asociadas a este o el mismo conjunto de datos en el área de trabajo.
get_profile_runs(workspace=None)
Parámetros
Nombre | Description |
---|---|
workspace
Requerido
|
Área de trabajo donde se envió la ejecución del perfil. El valor predeterminado es el área de trabajo de este conjunto de datos. Obligatorio si el conjunto de datos no está asociado a un área de trabajo. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace para más información sobre las áreas de trabajo. |
Devoluciones
Tipo | Description |
---|---|
Objeto iterator de tipo azureml.core.Run. |
keep_columns
Conserva las columnas especificadas y elimina todas las demás del conjunto de datos.
Si se descarta una columna de serie temporal, también se eliminarán las funcionalidades correspondientes para el conjunto de datos devuelto.
keep_columns(columns, validate=False)
Parámetros
Nombre | Description |
---|---|
columns
Requerido
|
Nombre o lista de nombres de las columnas que se van a mantener. |
validate
Requerido
|
Indica si se va a validar si se pueden cargar datos desde el conjunto de datos devuelto. El valor predeterminado es False. La validación requiere que el origen de datos sea accesible desde el recurso de proceso actual. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto TabularDataset solo con las columnas especificadas que se mantienen. |
mount
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Crea un administrador de contexto para montar flujos de archivos definidos por el conjunto de datos como archivos locales.
mount(stream_column, mount_point=None)
Parámetros
Nombre | Description |
---|---|
stream_column
Requerido
|
Columna de secuencia que se montará. |
mount_point
Requerido
|
Directorio local en el que se montarán los archivos. Si es None, los datos se montarán en un directorio temporal, que se puede encontrar llamando al método de instancia MountContext.mount_point. |
Devoluciones
Tipo | Description |
---|---|
<xref:azureml.dataprep.fuse.daemon.MountContext>
|
Devuelve un administrador de contexto para administrar el ciclo de vida del montaje. |
partition_by
Los datos con particiones se copiarán y se mostrarán en el destino especificado por el destino.
Crea el conjunto de datos a partir de la ruta de acceso de datos de salida con formato de partición, registre el conjunto de datos si se proporciona el nombre, devuelva el conjunto de datos para la nueva ruta de acceso de datos con particiones.
ds = Dataset.get_by_name('test') # indexed by country, state, partition_date
# #1: call partition_by locally
new_ds = ds.partition_by(name="repartitioned_ds", partition_keys=['country'],
target=DataPath(datastore, "repartition"))
partition_keys = newds.partition_keys # ['country']
# new_ds can be passed to PRS as input dataset
partition_by(partition_keys, target, name=None, show_progress=True, partition_as_file_dataset=False)
Parámetros
Nombre | Description |
---|---|
partition_keys
Requerido
|
Obligatorio, claves de partición |
target
Requerido
|
Obligatorio, la ruta de acceso del almacén de datos en la que se cargarán los datos del parquet de la trama de datos. Se generará una carpeta guid en la ruta de acceso de destino para evitar conflictos. |
name
Requerido
|
Opcional, el nombre de registro. |
show_progress
Requerido
|
Opcional, indica si se debe mostrar el progreso de la carga en la consola. El valor predeterminado es True. |
partition_as_file_dataset
Requerido
|
Opcional, indica si devuelve un conjunto de datos de archivo o no. El valor predeterminado es False. |
Devoluciones
Tipo | Description |
---|---|
Conjunto de datos guardado o registrado. |
random_split
Divide los registros del conjunto de datos en dos partes de manera aleatoria y aproximada según el porcentaje especificado.
El primer conjunto de datos contiene aproximadamente percentage
de los registros totales y el segundo conjunto de datos los registros restantes.
random_split(percentage, seed=None)
Parámetros
Nombre | Description |
---|---|
percentage
Requerido
|
Porcentaje aproximado por el que se divide el conjunto de datos. Debe ser un número comprendido entre 0,0 y 1,0. |
seed
Requerido
|
Inicialización opcional que se usará para el generador aleatorio. |
Devoluciones
Tipo | Description |
---|---|
Devuelve una tupla de objetos FileDataset nuevos que representa los dos conjuntos de datos después de la división. |
skip
Omite los registros de la parte superior del conjunto de datos según el recuento especificado.
skip(count)
Parámetros
Nombre | Description |
---|---|
count
Requerido
|
Número de registros que se van a omitir. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto TabularDataset que representa un conjunto de datos con los registros omitidos. |
submit_profile_run
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Envía una ejecución de experimentación para calcular el perfil de datos.
Un perfil de datos puede ser muy útil para comprender los datos de entrada, identificar anomalías y valores que faltan proporcionando información útil sobre los datos, como el tipo de columna, los valores que faltan, etc.
submit_profile_run(compute_target, experiment, cache_datastore_name=None)
Parámetros
Nombre | Description |
---|---|
compute_target
Requerido
|
Destino de proceso en el que se ejecutará el experimento de cálculo de perfil. Especifique "local" para usar el recurso de proceso local. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.computetarget para más información sobre los destinos de proceso. |
experiment
Requerido
|
Objeto de experimento. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.experiment.experiment para más información sobre los experimentos. |
cache_datastore_name
Requerido
|
El nombre del almacén de datos para almacenar la caché de perfiles; si está establecido en None, se usará el almacén de datos predeterminado. |
Devoluciones
Tipo | Description |
---|---|
Objeto de tipo clase DatasetProfileRun. |
take
Toma una muestra de los registros de la parte superior del conjunto de datos según el recuento especificado.
take(count)
Parámetros
Nombre | Description |
---|---|
count
Requerido
|
Número de registros que se van a tomar. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto TabularDataset que representa el conjunto de datos muestreado. |
take_sample
Toma una muestra aleatoria de registros del conjunto de datos según la probabilidad especificada aproximadamente.
take_sample(probability, seed=None)
Parámetros
Nombre | Description |
---|---|
probability
Requerido
|
Probabilidad de que un registro se incluya en la muestra. |
seed
Requerido
|
Inicialización opcional que se usará para el generador aleatorio. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto TabularDataset que representa el conjunto de datos muestreado. |
time_after
Filtra un objeto TabularDataset con columnas de marca de tiempo después de una hora de inicio especificada.
time_after(start_time, include_boundary=True, validate=True)
Parámetros
Nombre | Description |
---|---|
start_time
Requerido
|
Límite inferior para filtrar los datos. |
include_boundary
Requerido
|
Indica si se va a incluir la fila asociada al tiempo del límite ( |
validate
Requerido
|
Indica si se va a validar si existen las columnas especificadas en el conjunto de datos. El valor predeterminado es True. La validación requiere que el origen de datos sea accesible desde el recurso de proceso actual. |
Devoluciones
Tipo | Description |
---|---|
Objeto TabularDataset con el nuevo conjunto de datos filtrado. |
time_before
Filtra un objeto TabularDataset con columnas de marca de tiempo antes de una hora de finalización especificada.
time_before(end_time, include_boundary=True, validate=True)
Parámetros
Nombre | Description |
---|---|
end_time
Requerido
|
Límite superior para filtrar los datos. |
include_boundary
Requerido
|
Indica si se va a incluir la fila asociada al tiempo del límite ( |
validate
Requerido
|
Indica si se va a validar si existen las columnas especificadas en el conjunto de datos. El valor predeterminado es True. La validación requiere que el origen de datos sea accesible desde el recurso de proceso actual. |
Devoluciones
Tipo | Description |
---|---|
Objeto TabularDataset con el nuevo conjunto de datos filtrado. |
time_between
Filtra un objeto TabularDataset entre una hora de inicio y de finalización especificadas.
time_between(start_time, end_time, include_boundary=True, validate=True)
Parámetros
Nombre | Description |
---|---|
start_time
Requerido
|
Límite inferior para filtrar los datos. |
end_time
Requerido
|
Límite superior para filtrar los datos. |
include_boundary
Requerido
|
Indica si se va a incluir la fila asociada al tiempo del límite ( |
validate
Requerido
|
Indica si se va a validar si existen las columnas especificadas en el conjunto de datos. El valor predeterminado es True. La validación requiere que el origen de datos sea accesible desde el recurso de proceso actual. |
Devoluciones
Tipo | Description |
---|---|
Objeto TabularDataset con el nuevo conjunto de datos filtrado. |
time_recent
Filtra un objeto TabularDataset para que contenga solo la duración (cantidad) especificada de datos recientes.
time_recent(time_delta, include_boundary=True, validate=True)
Parámetros
Nombre | Description |
---|---|
time_delta
Requerido
|
Duración (cantidad) de los datos recientes que se van a recuperar. |
include_boundary
Requerido
|
Indica si se va a incluir la fila asociada al tiempo del límite ( |
validate
Requerido
|
Indica si se va a validar si existen las columnas especificadas en el conjunto de datos. El valor predeterminado es True. La validación requiere que el origen de datos sea accesible desde el recurso de proceso actual. |
Devoluciones
Tipo | Description |
---|---|
Objeto TabularDataset con el nuevo conjunto de datos filtrado. |
to_csv_files
Convierte el conjunto de datos actual en un objeto FileDataset que contiene archivos CSV.
El conjunto de datos resultante contendrá uno o varios archivos CSV, cada uno correspondiente a una partición de datos del conjunto de datos actual. Estos archivos no se materializan hasta que se descargan o se leen.
to_csv_files(separator=',')
Parámetros
Nombre | Description |
---|---|
separator
Requerido
|
Separador que se va a usar para separar los valores del archivo resultante. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto FileDataset con un conjunto de archivos CSV que contienen los datos de este conjunto de datos. |
to_dask_dataframe
Nota
Se trata de un método experimental y puede cambiar en cualquier momento. Consulte https://aka.ms/azuremlexperimental para más información.
Devuelve un DataFrame de Dask que puede leer de forma diferida los datos del conjunto de datos.
to_dask_dataframe(sample_size=10000, dtypes=None, on_error='null', out_of_range_datetime='null')
Parámetros
Nombre | Description |
---|---|
sample_size
Requerido
|
Número de registros que se leerán para determinar el esquema y los tipos. |
dtypes
Requerido
|
Un dict opcional que especifica las columnas esperadas y sus dtypes. sample_size se omite si se proporciona. |
on_error
Requerido
|
Cómo controlar los valores de error del conjunto de datos, como los generados por un error al analizar los valores. Los valores válidos son 'null', que los reemplaza por null; y "fail", lo que dará lugar a una excepción. |
out_of_range_datetime
Requerido
|
Cómo controlar los valores de fecha y hora que están fuera del intervalo admitido por Pandas. Los valores válidos son 'null', que los reemplaza por null; y "fail", lo que dará lugar a una excepción. |
Devoluciones
Tipo | Description |
---|---|
dask.dataframe.core.DataFrame |
to_pandas_dataframe
Carga todos los registros del conjunto de datos en un DataFrame de pandas.
to_pandas_dataframe(on_error='null', out_of_range_datetime='null')
Parámetros
Nombre | Description |
---|---|
on_error
Requerido
|
Cómo controlar los valores de error del conjunto de datos, como los generados por un error al analizar los valores. Los valores válidos son 'null', que los reemplaza por null; y "fail", lo que dará lugar a una excepción. |
out_of_range_datetime
Requerido
|
Cómo controlar los valores de fecha y hora que están fuera del intervalo admitido por Pandas. Los valores válidos son 'null', que los reemplaza por null; y "fail", lo que dará lugar a una excepción. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un DataFrame de pandas. |
to_parquet_files
Convierte el conjunto de datos actual en un objeto FileDataset que contiene archivos Parquet.
El conjunto de datos resultante contendrá uno o varios archivos Parquet, cada uno correspondiente a una partición de datos del conjunto de datos actual. Estos archivos no se materializan hasta que se descargan o se leen.
to_parquet_files()
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto FileDataset con un conjunto de archivos Parquet que contienen los datos de este conjunto de datos. |
to_spark_dataframe
Carga todos los registros del conjunto de datos en un DataFrame de Spark.
to_spark_dataframe()
Devoluciones
Tipo | Description |
---|---|
Devuelve un DataFrame de Spark. |
with_timestamp_columns
Define columnas de marca de tiempo para el conjunto de datos.
with_timestamp_columns(timestamp=None, partition_timestamp=None, validate=False, **kwargs)
Parámetros
Nombre | Description |
---|---|
timestamp
Requerido
|
Nombre de columna como marca de tiempo (que se conoce como fine_grain_timestamp) (opcional). El valor predeterminado es None (borrar). |
partition_timestamp
Requerido
|
Nombre de columna como marca de tiempo (que se conoce como marca de tiempo de intervalo de agregación de gran tamaño) (opcional). El valor predeterminado es None (borrar). |
validate
Requerido
|
Indica si se va a validar si existen las columnas especificadas en el conjunto de datos. El valor predeterminado es False. La validación requiere que el origen de datos sea accesible desde el recurso de proceso actual. |
Devoluciones
Tipo | Description |
---|---|
Devuelve un nuevo objeto TabularDataset con las columnas de marca de tiempo definidas. |
Comentarios
El método define las columnas que se usarán como marcas de tiempo. Las columnas de marca de tiempo de un conjunto de datos permiten tratar los datos como datos de serie temporal y habilitar funcionalidades adicionales. Cuando un conjunto de datos tiene timestamp (used to be referred as fine_grain_timestamp)
y partition_timestamp (used to be referred as coarse grain timestamp)
especificados, las dos columnas deben representar la misma escala de tiempo.
Atributos
timestamp_columns
Devuelve las columnas de marca de tiempo.
Devoluciones
Tipo | Description |
---|---|
Nombres de columna de marca de tiempo (que se suelen llamar fine_grain_timestamp) y partition_timestamp (que se denominan marcas de tiempo de intervalo de agregación de gran tamaño) definidas para el conjunto de datos. |