TabularDataset Classe
Representa um conjunto de dados tabular a ser usado no Azure Machine Learning.
Um TabularDataset define uma série de operações que passam por avaliação preguiçosa e imutáveis a fim de carregar dados da fonte de dados para a representação tabular. Os dados não são carregados da origem até que TabularDataset seja solicitado a fornecer dados.
TabularDataset é criado usando métodos como from_delimited_files da classe TabularDatasetFactory.
Para obter mais informações, consulte o artigo Adicionar & registrar conjuntos de dados. Para começar a trabalhar com um conjunto de dados tabular, confira https://aka.ms/tabulardataset-samplenotebook.
Inicialize um objeto TabularDataset.
Esse construtor não deve ser invocado diretamente. O conjunto de dados deve ser criado usando TabularDatasetFactory a classe .
- Herança
-
TabularDataset
Construtor
TabularDataset()
Comentários
Um TabularDataset pode ser criado a partir de arquivos CSV, TSV, Parquet ou consulta SQL usando os métodos from_*
da classe TabularDatasetFactory. É possível executar operações de subconjunto em um TabularDataset como dividir, ignorar e filtrar registros.
O resultado do subconjunto é sempre um ou mais novos objetos TabularDataset.
Você também pode converter um TabularDataset em outros formatos, como um DataFrame do Pandas. O carregamento de dados propriamente dito ocorre quando o TabularDataset é solicitado a entregar os dados em outro mecanismo de armazenamento (por exemplo, um DataFrame do Pandas ou um arquivo CSV).
O 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 mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações. Baixar os fluxos de arquivo definidos pelo conjunto de dados para o caminho local. |
drop_columns |
Remove as colunas especificadas do conjunto de dados. Se uma coluna de série temporal for removida, os recursos correspondentes também serão removidos para o conjunto de dados retornado. |
filter |
Observação Esse é um método experimental e pode mudar 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 mudar 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 para o mesmo conjunto de dados no workspace. |
get_profile_runs |
Observação Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações. Retorna as execuções de perfil anteriores associadas a este ou ao mesmo conjunto de dados no workspace. |
keep_columns |
Mantém as colunas especificadas e remove todas as outras do conjunto de dados. Se uma coluna de série temporal for removida, os recursos correspondentes também serão removidos para o conjunto de dados retornado. |
mount |
Observação Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações. Criar um gerenciador de contexto para a montagem de fluxos de arquivos definidos pelo conjunto de dados como arquivos locais. |
partition_by |
Dados particionados serão copiados e produzidos como saída para o destino especificado. Criar o conjunto de dados com base no caminho de dados produzido com o formato de partição, registrar o conjunto de dados se o nome for fornecido, retornar o conjunto de dados para o novo caminho de dados com partições
|
random_split |
Divide os registros no conjunto de dados em duas partes aleatoriamente e aproximadamente pelo percentual especificado. O primeiro conjunto de dados contém aproximadamente |
skip |
Ignora registros do topo do conjunto de dados pela contagem especificada. |
submit_profile_run |
Observação Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações. Enviar 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 |
Obtém uma amostra de registros do topo do conjunto de dados pela contagem especificada. |
take_sample |
Obtém uma amostra aleatória de registros no conjunto de dados aproximadamente pela probabilidade especificada. |
time_after |
Filtra TabularDataset com colunas de carimbo de data/hora após uma hora de início especificada. |
time_before |
Filtra TabularDataset com colunas de carimbo de data/hora antes de um horário de término especificado. |
time_between |
Filtra TabularDataset entre um horário de início e término especificado. |
time_recent |
Filtra TabularDataset para conter apenas a duração especificada (valor) dos dados recentes. |
to_csv_files |
Converte o conjunto de dados atual em um FileDataset que contém os arquivos CSV. O conjunto de dados resultante conterá um ou mais arquivos CSV, cada um correspondendo a uma partição de dados do conjunto de dados atual. Esses arquivos não serão materializados até que sejam baixados ou lidos. |
to_dask_dataframe |
Observação Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações. Retorna um dataframe Dask que pode fazer leitura lenta dos dados no conjunto de dados. |
to_pandas_dataframe |
Carrega todos os registros do conjunto de dados em um DataFrame do pandas. |
to_parquet_files |
Converte 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 correspondendo a uma partição de dados do conjunto de dados atual. Esses arquivos não serão materializados até que sejam baixados ou lidos. |
to_spark_dataframe |
Carrega todos os registros do conjunto de dados em um DataFrame do Spark. |
with_timestamp_columns |
Defina as colunas de carimbo de data/hora para o conjunto de dados. |
download
Observação
Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.
Baixar os 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
|
A coluna de fluxo a ser baixada. |
target_path
Obrigatório
|
O diretório local para o qual baixar os arquivos. Se for None, os dados serão baixados para 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 overwrite estiver definido como True; caso contrário, uma exceção será gerada. |
ignore_not_found
Obrigatório
|
Indica se haverá falha no download se alguns arquivos apontados pelo conjunto de dados não forem encontrados. O padrão é True. O download falhará se algum download de arquivo falhar por qualquer motivo se ignore_not_found estiver definido como False; caso contrário, um aviso será registrado em log para erros do tipo "não encontrado" e o download terá sucesso, 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
Remove as colunas especificadas do conjunto de dados.
Se uma coluna de série temporal for removida, os recursos correspondentes também serão removidos 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 removidas. |
Retornos
Tipo | Description |
---|---|
Retorna um novo objeto TabularDataset com as colunas especificadas removidas. |
filter
Observação
Esse é um método experimental e pode mudar 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
|
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. Elas dão suporte a uma variedade de funções e operadores e podem ser combinadas usando operadores lógicos. A expressão resultante passará por avaliação lenta para cada registro quando ocorrer um pull de dados, e não onde ela está definida.
dataset['myColumn'] > dataset['columnToCompareAgainst']
dataset['myColumn'].starts_with('prefix')
get_profile
Observação
Esse é um método experimental e pode mudar 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 para 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 deste conjunto de dados. Obrigató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 para obter mais informações sobre workspaces. |
Retornos
Tipo | Description |
---|---|
Resultado do perfil da última análise de perfil do tipo DatasetProfile. |
get_profile_runs
Observação
Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.
Retorna as execuções de perfil anteriores associadas a este ou ao 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 deste conjunto de dados. Obrigató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 para obter mais informações sobre workspaces. |
Retornos
Tipo | Description |
---|---|
Objeto iterador do tipo azureml.core.Run. |
keep_columns
Mantém as colunas especificadas e remove todas as outras do conjunto de dados.
Se uma coluna de série temporal for removida, os recursos correspondentes também serão removidos 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 é necessário validar se os dados podem ser carregados do conjunto de dados retornado. O padrão é False. A validação requer que a fonte de dados seja acessível a partir da 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 mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.
Criar um gerenciador de contexto para a montagem de 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
|
A coluna de fluxo a ser montada. |
mount_point
Obrigatório
|
O diretório local no qual montar os arquivos. Se for None, os dados serão montados em um diretório temporário, que você poderá 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
Dados particionados serão copiados e produzidos como saída para o destino especificado.
Criar o conjunto de dados com base no caminho de dados produzido com o formato de partição, registrar o conjunto de dados se o nome for fornecido, retornar 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
|
Opcional, o nome de registro. |
show_progress
Obrigatório
|
Opcional, indica se é preciso mostrar o progresso do upload no console. O padrão é True. |
partition_as_file_dataset
Obrigatório
|
Opcional, indica se um filedataset deve ser retornado. O padrão é False. |
Retornos
Tipo | Description |
---|---|
O conjunto de dados salvo ou registrado. |
random_split
Divide os registros no conjunto de dados em duas partes aleatoriamente e aproximadamente pelo percentual especificado.
O primeiro conjunto de dados contém aproximadamente percentage
do total de registros e o segundo conjunto de dados os registros restantes.
random_split(percentage, seed=None)
Parâmetros
Nome | Description |
---|---|
percentage
Obrigatório
|
O percentual aproximado pelo qual dividir o conjunto de dados. Precisa ser um número entre 0.0 e 1.0. |
seed
Obrigatório
|
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
Ignora registros do topo do conjunto de dados pela contagem especificada.
skip(count)
Parâmetros
Nome | Description |
---|---|
count
Obrigatório
|
O número de registros a ser ignorados. |
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 mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.
Enviar 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 para executar o experimento de cálculo de perfil. Especifica o 'local' para usar a computação local. Confira https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.computetarget para obter mais informações sobre destinos de computação. |
experiment
Obrigatório
|
O objeto do experimento. Para obter mais informações sobre experimentos, confira https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.experiment.experiment. |
cache_datastore_name
Obrigatório
|
O nome do armazenamento de dados no qual armazenar o cache de perfil; se for None, o armazenamento de dados padrão será usado |
Retornos
Tipo | Description |
---|---|
Um objeto do tipo de classe DatasetProfileRun. |
take
Obtém uma amostra de registros do topo do conjunto de dados pela contagem especificada.
take(count)
Parâmetros
Nome | Description |
---|---|
count
Obrigatório
|
O número de registros a serem obtidos. |
Retornos
Tipo | Description |
---|---|
Retorna um novo objeto TabularDataset que representa o conjunto de dados amostrado. |
take_sample
Obtém uma amostra aleatória 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 no exemplo. |
seed
Obrigatório
|
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
Filtra 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 filtrar dados. |
include_boundary
Obrigatório
|
Indica se a linha associada ao tempo limite ( |
validate
Obrigatório
|
Indica se as colunas especificadas devem ser validadas no conjunto de dados. O padrão é True. A validação requer que a fonte de dados seja acessível a partir da computação atual. |
Retornos
Tipo | Description |
---|---|
Um TabularDataset com o novo conjunto de dados filtrado. |
time_before
Filtra TabularDataset com colunas de carimbo de data/hora antes de um horário de término especificado.
time_before(end_time, include_boundary=True, validate=True)
Parâmetros
Nome | Description |
---|---|
end_time
Obrigatório
|
Limite superior para filtrar dados. |
include_boundary
Obrigatório
|
Indica se a linha associada ao tempo limite ( |
validate
Obrigatório
|
Indica se as colunas especificadas devem ser validadas no conjunto de dados. O padrão é True. A validação requer que a fonte de dados seja acessível a partir da computação atual. |
Retornos
Tipo | Description |
---|---|
Um TabularDataset com o novo conjunto de dados filtrado. |
time_between
Filtra TabularDataset entre um horário de início e término especificado.
time_between(start_time, end_time, include_boundary=True, validate=True)
Parâmetros
Nome | Description |
---|---|
start_time
Obrigatório
|
O limite inferior para filtrar dados. |
end_time
Obrigatório
|
O limite superior para filtrar dados. |
include_boundary
Obrigatório
|
Indica se a linha associada ao tempo limite ( |
validate
Obrigatório
|
Indica se as colunas especificadas devem ser validadas no conjunto de dados. O padrão é True. A validação requer que a fonte de dados seja acessível a partir da computação atual. |
Retornos
Tipo | Description |
---|---|
Um TabularDataset com o novo conjunto de dados filtrado. |
time_recent
Filtra TabularDataset para conter apenas a duração especificada (valor) dos dados recentes.
time_recent(time_delta, include_boundary=True, validate=True)
Parâmetros
Nome | Description |
---|---|
time_delta
Obrigatório
|
A duração (valor) dos dados recentes a serem recuperados. |
include_boundary
Obrigatório
|
Indica se a linha associada ao tempo limite ( |
validate
Obrigatório
|
Indica se as colunas especificadas devem ser validadas no conjunto de dados. O padrão é True. A validação requer que a fonte de dados seja acessível a partir da computação atual. |
Retornos
Tipo | Description |
---|---|
Um TabularDataset com o novo conjunto de dados filtrado. |
to_csv_files
Converte o conjunto de dados atual em um FileDataset que contém os arquivos CSV.
O conjunto de dados resultante conterá um ou mais arquivos CSV, cada um correspondendo a uma partição de dados do conjunto de dados atual. Esses arquivos não serão materializados até que sejam baixados ou lidos.
to_csv_files(separator=',')
Parâmetros
Nome | Description |
---|---|
separator
Obrigatório
|
O separador a ser usado para separar os valores no arquivo resultante. |
Retornos
Tipo | Description |
---|---|
Retorna um novo objeto FileDataset com um conjunto de arquivos CSV que contém os dados desse conjunto de dados. |
to_dask_dataframe
Observação
Esse é um método experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.
Retorna um dataframe Dask que pode fazer leitura lenta dos dados 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 dicionário opcional que especifica as colunas esperadas e os respectivos dtypes. sample_size será ignorado se esse valor for fornecido. |
on_error
Obrigatório
|
Como lidar com valores de erro no conjunto de dados, como aqueles produzidos por um erro ao analisar valores. Os valores válidos são 'null', que os substitui por nulo; e 'fail' que resultará em uma exceção. |
out_of_range_datetime
Obrigatório
|
Como tratar valores de data/hora que estão fora do intervalo com suporte pelo Pandas. Os valores válidos são 'null', que os substitui por nulo; e 'fail', que resultará em uma exceção. |
Retornos
Tipo | Description |
---|---|
dask.dataframe.core.DataFrame |
to_pandas_dataframe
Carrega todos os registros do conjunto de dados em um DataFrame do 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 ao analisar valores. Os valores válidos são 'null', que os substitui por nulo; e 'fail' que resultará em uma exceção. |
out_of_range_datetime
Obrigatório
|
Como tratar valores de data/hora que estão fora do intervalo com suporte pelo Pandas. Os valores válidos são 'null', que os substitui por nulo; e 'fail' que resultará em uma exceção. |
Retornos
Tipo | Description |
---|---|
Retorna um dataframe do pandas. |
to_parquet_files
Converte 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 correspondendo a uma partição de dados do conjunto de dados atual. Esses arquivos não serã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 nesse conjunto de dados. |
to_spark_dataframe
Carrega 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 as 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
|
O nome da coluna como carimbo de data/hora (usado para ser chamado de fine_grain_timestamp) (opcional). O padrão é None (limpo). |
partition_timestamp
Obrigatório
|
O nome da coluna partition_timestamp (usado para ser chamado de coarse_grain_timestamp) (opcional). O padrão é None (limpo). |
validate
Obrigatório
|
Indica se as colunas especificadas devem ser validadas no conjunto de dados. O padrão é False. A validação requer que a fonte de dados seja 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 as colunas a serem usadas como carimbos de data/hora. As colunas de carimbo de data/hora em um conjunto de dados possibilitam tratar os dados como dados de série temporal e habilitar funcionalidades adicionais. Quando um conjunto de dados tem timestamp (used to be referred as fine_grain_timestamp)
e partition_timestamp (used to be referred as coarse grain timestamp)
especificados, as duas colunas devem representar a mesma linha do tempo.