Compartilhar via


TabularDataset Classe

Representa um conjunto de dados tabular a ser usado no Azure Machine Learning.

Um TabularDataset define uma série de operações imutáveis avaliadas de modo preguiçoso para carregar dados da fonte de dados em representação tabular. Os dados não são carregados da origem até que TabularDataset seja solicitado a entregar dados.

TabularDataset é criado usando métodos como from_delimited_files a TabularDatasetFactory da classe.

Para obter mais informações, consulte o artigo Adicionar ®istrar conjuntos de dados. Para começar a trabalhar com um conjunto de dados tabular, consulte https://aka.ms/tabulardataset-samplenotebook.

Inicializar um objeto TabularDataset.

Este construtor não deve ser invocado diretamente. O conjunto de dados destina-se a ser criado usando TabularDatasetFactory a classe.

Construtor

TabularDataset()

Comentários

Um TabularDataset pode ser criado com base em CSV, TSV, arquivos Parquet ou consulta SQL usando os from_* métodos da TabularDatasetFactory classe. Você pode executar operações de subconjunto em um TabularDataset, como dividir, ignorar e filtrar registros. O resultado da subconstanção é sempre um ou mais novos objetos TabularDataset.

Você também pode converter um TabularDataset em outros formatos, como um DataFrame pandas. O carregamento real de dados ocorre quando TabularDataset é solicitado a entregar os dados em outro mecanismo de armazenamento (por exemplo, um Dataframe do Pandas ou um arquivo CSV).

TabularDataset pode ser usado como entrada de uma execução de experimento. Ele também pode ser registrado no workspace com um nome especificado e ser recuperado por esse nome posteriormente.

Métodos

download

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Baixe fluxos de arquivo definidos pelo conjunto de dados para o caminho local.

drop_columns

Remova as colunas especificadas do conjunto de dados.

Se uma coluna de timeseries for descartada, os recursos correspondentes também serão descartados para o conjunto de dados retornado.

filter

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Filtrar os dados, deixando apenas os registros que correspondam à expressão especificada.

get_profile

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Obtenha o perfil de dados da última execução de perfil enviada para este ou o mesmo conjunto de dados no workspace.

get_profile_runs

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Retornar execuções de perfil anteriores associadas a esse ou mesmo conjunto de dados no workspace.

keep_columns

Mantenha as colunas especificadas e remove todas as outras do conjunto de dados.

Se uma coluna de timeseries for descartada, os recursos correspondentes também serão descartados para o conjunto de dados retornado.

mount

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Crie um gerenciador de contexto para montar fluxos de arquivos definidos pelo conjunto de dados como arquivos locais.

partition_by

Os dados particionados serão copiados e serão enviados para o destino especificado pelo destino.

crie o conjunto de dados do caminho de dados saída com o formato de partição, registre o conjunto de dados se o nome for fornecido, retorne o conjunto de dados para o novo caminho de dados com partições


   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
random_split

Divida os registros no conjunto de dados em duas partes aleatoriamente e aproximadamente pela porcentagem especificada.

O primeiro conjunto de dados contém aproximadamente percentage o total de registros e o segundo conjunto de dados dos registros restantes.

skip

Ignore os registros da parte superior do conjunto de dados pela contagem especificada.

submit_profile_run

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Envie uma execução de experimentação para calcular o perfil de dados.

Um perfil de dados pode ser muito útil para entender os dados de entrada, identificar anomalias e valores ausentes fornecendo informações úteis sobre os dados, como tipo de coluna, valores ausentes etc.

take

Pegue um exemplo de registros da parte superior do conjunto de dados pela contagem especificada.

take_sample

Pegue um exemplo aleatório de registros no conjunto de dados aproximadamente pela probabilidade especificada.

time_after

Filtrar TabularDataset com colunas de carimbo de data/hora após uma hora de início especificada.

time_before

Filtrar TabularDataset com colunas de carimbo de data/hora antes de uma hora de término especificada.

time_between

Filtrar TabularDataset entre uma hora de início e de término especificada.

time_recent

Filtre TabularDataset para conter apenas a duração (quantidade) especificada dos dados recentes.

to_csv_files

Converta o conjunto de dados atual em um FileDataset contendo arquivos CSV.

O conjunto de dados resultante conterá um ou mais arquivos CSV, cada um correspondente a uma partição de dados do conjunto de dados atual. Esses arquivos não são materializados até que sejam baixados ou lidos.

to_dask_dataframe

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Retorne um DataFrame dask que pode ler os dados de forma preguiçosa no conjunto de dados.

to_pandas_dataframe

Carregue todos os registros do conjunto de dados em um DataFrame pandas.

to_parquet_files

Converta o conjunto de dados atual em um FileDataset que contém arquivos Parquet.

O conjunto de dados resultante conterá um ou mais arquivos Parquet, cada um correspondente a uma partição de dados do conjunto de dados atual. Esses arquivos não são materializados até que sejam baixados ou lidos.

to_spark_dataframe

Carregue todos os registros do conjunto de dados em um DataFrame do Spark.

with_timestamp_columns

Defina colunas de carimbo de data/hora para o conjunto de dados.

download

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Baixe fluxos de arquivo definidos pelo conjunto de dados para o caminho local.

download(stream_column, target_path=None, overwrite=False, ignore_not_found=True)

Parâmetros

Nome Description
stream_column
Obrigatório
str

A coluna de fluxo a ser baixada.

target_path
Obrigatório
str

O diretório local para o qual baixar os arquivos. Se Nenhum, os dados serão baixados em um diretório temporário.

overwrite
Obrigatório

Indica se os arquivos existentes devem ser substituídos. O padrão é False. Os arquivos existentes serão substituídos se a substituição estiver definida como True; caso contrário, uma exceção será gerada.

ignore_not_found
Obrigatório

Indica se será necessário fazer o download se alguns arquivos apontados pelo conjunto de dados não forem encontrados. O padrão é True. O download falhará se qualquer download de arquivo falhar por algum motivo se ignore_not_found estiver definido como False; caso contrário, um waring será registrado para erros não encontrados e o dowload terá êxito, desde que nenhum outro tipo de erro seja encontrado.

Retornos

Tipo Description

Retorna uma matriz de caminhos de arquivo para cada arquivo baixado.

drop_columns

Remova as colunas especificadas do conjunto de dados.

Se uma coluna de timeseries for descartada, os recursos correspondentes também serão descartados para o conjunto de dados retornado.

drop_columns(columns)

Parâmetros

Nome Description
columns
Obrigatório

O nome ou uma lista de nomes para as colunas a serem soltas.

Retornos

Tipo Description

Retorna um novo objeto TabularDataset com as colunas especificadas descartadas.

filter

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Filtrar os dados, deixando apenas os registros que correspondam à expressão especificada.

filter(expression)

Parâmetros

Nome Description
expression
Obrigatório
any

A expressão a ser avaliada.

Retornos

Tipo Description

O conjunto de dados modificado (não registrado).

Comentários

As expressões são iniciadas indexando o conjunto de dados com o nome de uma coluna. Eles dão suporte a uma variedade de funções e operadores e podem ser combinados usando operadores lógicos. A expressão resultante será avaliada de forma preguiçosa para cada registro quando ocorrer um pull de dados e não onde ele for definido.


   dataset['myColumn'] > dataset['columnToCompareAgainst']
   dataset['myColumn'].starts_with('prefix')

get_profile

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Obtenha o perfil de dados da última execução de perfil enviada para este ou o mesmo conjunto de dados no workspace.

get_profile(workspace=None)

Parâmetros

Nome Description
workspace
Obrigatório

O workspace em que a execução do perfil foi enviada. O padrão é o workspace desse conjunto de dados. Necessário se o conjunto de dados não estiver associado a um workspace. Confira https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace mais informações sobre workspaces.

Retornos

Tipo Description

Resultado do perfil da última execução de perfil do tipo DatasetProfile.

get_profile_runs

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Retornar execuções de perfil anteriores associadas a esse ou mesmo conjunto de dados no workspace.

get_profile_runs(workspace=None)

Parâmetros

Nome Description
workspace
Obrigatório

O workspace em que a execução do perfil foi enviada. O padrão é o workspace desse conjunto de dados. Necessário se o conjunto de dados não estiver associado a um workspace. Confira https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace mais informações sobre workspaces.

Retornos

Tipo Description

objeto iterador do tipo azureml.core.Run.

keep_columns

Mantenha as colunas especificadas e remove todas as outras do conjunto de dados.

Se uma coluna de timeseries for descartada, os recursos correspondentes também serão descartados para o conjunto de dados retornado.

keep_columns(columns, validate=False)

Parâmetros

Nome Description
columns
Obrigatório

O nome ou uma lista de nomes para as colunas a serem mantidas.

validate
Obrigatório

Indica se os dados podem ser carregados do conjunto de dados retornado. O padrão é False. A validação requer que a fonte de dados esteja acessível na computação atual.

Retornos

Tipo Description

Retorna um novo objeto TabularDataset com apenas as colunas especificadas mantidas.

mount

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Crie um gerenciador de contexto para montar fluxos de arquivos definidos pelo conjunto de dados como arquivos locais.

mount(stream_column, mount_point=None)

Parâmetros

Nome Description
stream_column
Obrigatório
str

A coluna de fluxo a ser montada.

mount_point
Obrigatório
str

O diretório local para o qual montar os arquivos. Se Nenhum, os dados serão montados em um diretório temporário, que você pode encontrar chamando o método de instância MountContext.mount_point .

Retornos

Tipo Description
<xref:azureml.dataprep.fuse.daemon.MountContext>

Retorna um gerenciador de contexto para gerenciar o ciclo de vida da montagem.

partition_by

Os dados particionados serão copiados e serão enviados para o destino especificado pelo destino.

crie o conjunto de dados do caminho de dados saída com o formato de partição, registre o conjunto de dados se o nome for fornecido, retorne o conjunto de dados para o novo caminho de dados com partições


   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

Nome Description
partition_keys
Obrigatório

Obrigatório, chaves de partição

target
Obrigatório

Obrigatório, o caminho do armazenamento de dados no qual os dados parquet do dataframe serão carregados. Uma pasta guid será gerada no caminho de destino para evitar conflitos.

name
Obrigatório
str

Opcional, o nome do registro.

show_progress
Obrigatório

Opcional, indica se o progresso do upload deve ser mostrado no console. O padrão é True.

partition_as_file_dataset
Obrigatório

Opcional, indica se retorna um conjunto de arquivos ou não. O padrão é False.

Retornos

Tipo Description

O conjunto de dados salvo ou registrado.

random_split

Divida os registros no conjunto de dados em duas partes aleatoriamente e aproximadamente pela porcentagem especificada.

O primeiro conjunto de dados contém aproximadamente percentage o total de registros e o segundo conjunto de dados dos registros restantes.

random_split(percentage, seed=None)

Parâmetros

Nome Description
percentage
Obrigatório

A porcentagem aproximada pela qual dividir o conjunto de dados. Esse deve ser um número entre 0,0 e 1,0.

seed
Obrigatório
int

Semente opcional a ser usada para o gerador aleatório.

Retornos

Tipo Description

Retorna uma tupla de novos objetos TabularDataset que representam os dois conjuntos de dados após a divisão.

skip

Ignore os registros da parte superior do conjunto de dados pela contagem especificada.

skip(count)

Parâmetros

Nome Description
count
Obrigatório
int

O número de registos a ignorar.

Retornos

Tipo Description

Retorna um novo objeto TabularDataset que representa um conjunto de dados com registros ignorados.

submit_profile_run

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Envie uma execução de experimentação para calcular o perfil de dados.

Um perfil de dados pode ser muito útil para entender os dados de entrada, identificar anomalias e valores ausentes fornecendo informações úteis sobre os dados, como tipo de coluna, valores ausentes etc.

submit_profile_run(compute_target, experiment, cache_datastore_name=None)

Parâmetros

Nome Description
compute_target
Obrigatório

O destino de computação no qual executar o experimento de cálculo de perfil. Especifique "local" para usar a computação local. Confira https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.computetarget mais informações sobre destinos de computação.

experiment
Obrigatório

O objeto de experimento. Confira https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.experiment.experiment mais informações sobre experimentos.

cache_datastore_name
Obrigatório
str

o nome do armazenamento de dados para armazenar o cache de perfil, se Nenhum, o armazenamento de dados padrão será usado

Retornos

Tipo Description

Um objeto do tipo classe DatasetProfileRun.

take

Pegue um exemplo de registros da parte superior do conjunto de dados pela contagem especificada.

take(count)

Parâmetros

Nome Description
count
Obrigatório
int

O número de registros a serem gravados.

Retornos

Tipo Description

Retorna um novo objeto TabularDataset que representa o conjunto de dados amostrado.

take_sample

Pegue um exemplo aleatório de registros no conjunto de dados aproximadamente pela probabilidade especificada.

take_sample(probability, seed=None)

Parâmetros

Nome Description
probability
Obrigatório

A probabilidade de um registro ser incluído na amostra.

seed
Obrigatório
int

Semente opcional a ser usada para o gerador aleatório.

Retornos

Tipo Description

Retorna um novo objeto TabularDataset que representa o conjunto de dados amostrado.

time_after

Filtrar TabularDataset com colunas de carimbo de data/hora após uma hora de início especificada.

time_after(start_time, include_boundary=True, validate=True)

Parâmetros

Nome Description
start_time
Obrigatório

O limite inferior para filtragem de dados.

include_boundary
Obrigatório

Indique se a linha associada ao tempo de limite (start_time) deve ser incluída.

validate
Obrigatório

Indica se as colunas especificadas existem no conjunto de dados deve ser validada. O padrão é True. A validação requer que a fonte de dados esteja acessível a partir da computação atual.

Retornos

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

time_before

Filtrar TabularDataset com colunas de carimbo de data/hora antes de uma hora de término especificada.

time_before(end_time, include_boundary=True, validate=True)

Parâmetros

Nome Description
end_time
Obrigatório

Limite superior para filtragem de dados.

include_boundary
Obrigatório

Indique se a linha associada ao tempo de limite (end_time) deve ser incluída.

validate
Obrigatório

Indica se as colunas especificadas existem no conjunto de dados deve ser validada. O padrão é True. A validação requer que a fonte de dados esteja acessível a partir da computação atual.

Retornos

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

time_between

Filtrar TabularDataset entre uma hora de início e de término especificada.

time_between(start_time, end_time, include_boundary=True, validate=True)

Parâmetros

Nome Description
start_time
Obrigatório

O limite inferior para filtragem de dados.

end_time
Obrigatório

O limite superior para filtrar dados.

include_boundary
Obrigatório

Indique se a linha associada ao tempo de limite (start_end e end_time) deve ser incluída.

validate
Obrigatório

Indica se as colunas especificadas existem no conjunto de dados deve ser validada. O padrão é True. A validação requer que a fonte de dados esteja acessível a partir da computação atual.

Retornos

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

time_recent

Filtre TabularDataset para conter apenas a duração (quantidade) especificada dos dados recentes.

time_recent(time_delta, include_boundary=True, validate=True)

Parâmetros

Nome Description
time_delta
Obrigatório

A duração (quantidade) dos dados recentes a serem recuperados.

include_boundary
Obrigatório

Indique se a linha associada ao tempo de limite (time_delta) deve ser incluída.

validate
Obrigatório

Indica se as colunas especificadas existem no conjunto de dados deve ser validada. O padrão é True. A validação requer que a fonte de dados esteja acessível a partir da computação atual.

Retornos

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

to_csv_files

Converta o conjunto de dados atual em um FileDataset contendo arquivos CSV.

O conjunto de dados resultante conterá um ou mais arquivos CSV, cada um correspondente a uma partição de dados do conjunto de dados atual. Esses arquivos não são materializados até que sejam baixados ou lidos.

to_csv_files(separator=',')

Parâmetros

Nome Description
separator
Obrigatório
str

O separador a ser usado para separar valores no arquivo resultante.

Retornos

Tipo Description

Retorna um novo objeto FileDataset com um conjunto de arquivos CSV que contêm os dados neste conjunto de dados.

to_dask_dataframe

Observação

Esse é um método experimental e pode ser alterado a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.

Retorne um DataFrame dask que pode ler os dados de forma preguiçosa no conjunto de dados.

to_dask_dataframe(sample_size=10000, dtypes=None, on_error='null', out_of_range_datetime='null')

Parâmetros

Nome Description
sample_size
Obrigatório

O número de registros a serem lidos para determinar o esquema e os tipos.

dtypes
Obrigatório

Um ditado opcional que especifica as colunas esperadas e seus tipos. sample_size será ignorado se isso for fornecido.

on_error
Obrigatório

Como lidar com valores de erro no conjunto de dados, como aqueles produzidos por um erro durante a análise de valores. Os valores válidos são 'null', o que os substitui por nulos; e "fail", o que resultará em uma exceção.

out_of_range_datetime
Obrigatório

Como lidar com valores de data e hora que estão fora do intervalo com suporte do Pandas. Os valores válidos são 'null', o que os substitui por nulos; e "fail", o que resultará em uma exceção.

Retornos

Tipo Description

dask.dataframe.core.DataFrame

to_pandas_dataframe

Carregue todos os registros do conjunto de dados em um DataFrame pandas.

to_pandas_dataframe(on_error='null', out_of_range_datetime='null')

Parâmetros

Nome Description
on_error
Obrigatório

Como lidar com valores de erro no conjunto de dados, como aqueles produzidos por um erro durante a análise de valores. Os valores válidos são 'null', o que os substitui por nulos; e "fail", o que resultará em uma exceção.

out_of_range_datetime
Obrigatório

Como lidar com valores de data e hora que estão fora do intervalo com suporte do Pandas. Os valores válidos são 'null', o que os substitui por nulos; e "fail", o que resultará em uma exceção.

Retornos

Tipo Description

Retorna um DataFrame pandas.

to_parquet_files

Converta o conjunto de dados atual em um FileDataset que contém arquivos Parquet.

O conjunto de dados resultante conterá um ou mais arquivos Parquet, cada um correspondente a uma partição de dados do conjunto de dados atual. Esses arquivos não são materializados até que sejam baixados ou lidos.

to_parquet_files()

Retornos

Tipo Description

Retorna um novo objeto FileDataset com um conjunto de arquivos Parquet que contêm os dados neste conjunto de dados.

to_spark_dataframe

Carregue todos os registros do conjunto de dados em um DataFrame do Spark.

to_spark_dataframe()

Retornos

Tipo Description

Retorna um DataFrame do Spark.

with_timestamp_columns

Defina colunas de carimbo de data/hora para o conjunto de dados.

with_timestamp_columns(timestamp=None, partition_timestamp=None, validate=False, **kwargs)

Parâmetros

Nome Description
timestamp
Obrigatório
str

O nome da coluna como carimbo de data/hora (usado para ser chamado de fine_grain_timestamp) (opcional). O padrão é None(clear).

partition_timestamp
Obrigatório
str

O nome da coluna partition_timestamp (usado para ser chamado de carimbo de data/hora de granulação grosseira) (opcional). O padrão é None(clear).

validate
Obrigatório

Indica se as colunas especificadas existem no conjunto de dados deve ser validada. O padrão é False. A validação requer que a fonte de dados esteja acessível a partir da computação atual.

Retornos

Tipo Description

Retorna um novo TabularDataset com colunas de carimbo de data/hora definidas.

Comentários

O método define colunas a serem usadas como carimbos de data/hora. Colunas de carimbo de data/hora em um conjunto de dados possibilitam tratar os dados como dados de série temporal e habilitar recursos adicionais. Quando um conjunto de dados tiver e timestamp (used to be referred as fine_grain_timestamp)partition_timestamp (used to be referred as coarse grain timestamp) especificado, as duas colunas deverão representar a mesma linha do tempo.

Atributos

timestamp_columns

Retorne as colunas de carimbo de data/hora.

Retornos

Tipo Description
(str, str)

Os nomes de coluna para carimbo de data/hora (usado para ser chamado de fine_grain_timestamp) e partition_timestamp (usado para ser chamado de carimbo de data/hora de granulação grosseira) definidos para o conjunto de dados.