Partilhar via


TabularDataset Classe

Representa um conjunto de dados tabular a ser usado no Aprendizado de Máquina do Azure.

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

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

Para obter mais informações, consulte o artigo Add & register datasets. Para começar a trabalhar com um conjunto de dados tabular, consulte https://aka.ms/tabulardataset-samplenotebook.

Inicialize 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()

Observações

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

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

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

Métodos

download

Observação

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

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

drop_columns

Solte as colunas especificadas do conjunto de dados.

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

filter

Observação

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

Filtre os dados, deixando apenas os registros que correspondem à expressão especificada.

get_profile

Observação

Este é 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 execução de perfil mais recente enviada para este ou para o mesmo conjunto de dados no espaço de trabalho.

get_profile_runs

Observação

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

Retornar execuções de perfil anteriores associadas a este ou ao mesmo conjunto de dados no espaço de trabalho.

keep_columns

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

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

mount

Observação

Este é um método experimental, e pode mudar 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 enviados para o destino especificado pelo destino.

criar o conjunto de dados a partir do caminho de dados de saída com 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
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 registos e o segundo conjunto de dados os restantes registos.

skip

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

submit_profile_run

Observação

Este é um método experimental, e pode mudar 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 compreender os dados de entrada, identificar anomalias e valores em falta, fornecendo informações úteis sobre os dados, como tipo de coluna, valores em falta, etc.

take

Pegue uma amostra de registros da parte superior do conjunto de dados pela contagem especificada.

take_sample

Pegue uma amostra aleatória de registros no conjunto de dados aproximadamente pela probabilidade especificada.

time_after

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

time_before

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

time_between

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

time_recent

Filtre TabularDataset para conter apenas a duração especificada (quantidade) 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 correspondendo 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

Este é 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 ler preguiçosamente os dados 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 contendo 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 são materializados até que sejam baixados ou lidos.

to_spark_dataframe

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

with_timestamp_columns

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

download

Observação

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

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

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

Parâmetros

Name Description
stream_column
Necessário
str

A coluna de fluxo para download.

target_path
Necessá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
Necessá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, será levantada uma exceção.

ignore_not_found
Necessário

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

Devoluções

Tipo Description

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

drop_columns

Solte as colunas especificadas do conjunto de dados.

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

drop_columns(columns)

Parâmetros

Name Description
columns
Necessário

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

Devoluções

Tipo Description

Retorna um novo objeto TabularDataset com as colunas especificadas descartadas.

filter

Observação

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

Filtre os dados, deixando apenas os registros que correspondem à expressão especificada.

filter(expression)

Parâmetros

Name Description
expression
Necessário
any

A expressão a avaliar.

Devoluções

Tipo Description

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

Observações

As expressões são iniciadas indexando o Dataset com o nome de uma coluna. Eles suportam uma variedade de funções e operadores e podem ser combinados usando operadores lógicos. A expressão resultante será avaliada preguiçosamente para cada registro quando ocorrer uma extração de dados e não onde ela for definida.


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

get_profile

Observação

Este é 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 execução de perfil mais recente enviada para este ou para o mesmo conjunto de dados no espaço de trabalho.

get_profile(workspace=None)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho onde a execução do perfil foi enviada. O padrão é o espaço de trabalho desse conjunto de dados. Obrigatório se o conjunto de dados não estiver associado a um espaço de trabalho. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace para obter mais informações sobre espaços de trabalho.

Devoluções

Tipo Description

Resultado do perfil da execução de perfil mais recente do tipo DatasetProfile.

get_profile_runs

Observação

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

Retornar execuções de perfil anteriores associadas a este ou ao mesmo conjunto de dados no espaço de trabalho.

get_profile_runs(workspace=None)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho onde a execução do perfil foi enviada. O padrão é o espaço de trabalho desse conjunto de dados. Obrigatório se o conjunto de dados não estiver associado a um espaço de trabalho. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace para obter mais informações sobre espaços de trabalho.

Devoluções

Tipo Description

objeto iterator do tipo azureml.core.Run.

keep_columns

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

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

keep_columns(columns, validate=False)

Parâmetros

Name Description
columns
Necessário

O nome ou uma lista de nomes para as colunas manterem.

validate
Necessário

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

Devoluções

Tipo Description

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

mount

Observação

Este é um método experimental, e pode mudar 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

Name Description
stream_column
Necessário
str

A coluna de fluxo a ser montada.

mount_point
Necessário
str

O diretório local para 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 .

Devoluções

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 enviados para o destino especificado pelo destino.

criar o conjunto de dados a partir do caminho de dados de saída com 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

Name Description
partition_keys
Necessário

Necessário, chaves de partição

target
Necessário

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

name
Necessário
str

Opcional, O nome do registro.

show_progress
Necessário

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

partition_as_file_dataset
Necessário

Opcional, indica se retorna um filedataset ou não. O padrão é False.

Devoluções

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 registos e o segundo conjunto de dados os restantes registos.

random_split(percentage, seed=None)

Parâmetros

Name Description
percentage
Necessário

A porcentagem aproximada para dividir o conjunto de dados por. Este deve ser um número entre 0,0 e 1,0.

seed
Necessário
int

Semente opcional para usar no gerador aleatório.

Devoluções

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

Name Description
count
Necessário
int

O número de registros a serem ignorados.

Devoluções

Tipo Description

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

submit_profile_run

Observação

Este é um método experimental, e pode mudar 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 compreender os dados de entrada, identificar anomalias e valores em falta, fornecendo informações úteis sobre os dados, como tipo de coluna, valores em falta, etc.

submit_profile_run(compute_target, experiment, cache_datastore_name=None)

Parâmetros

Name Description
compute_target
Necessário

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

experiment
Necessário

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

cache_datastore_name
Necessário
str

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

Devoluções

Tipo Description

Um objeto do tipo DatasetProfileRun classe.

take

Pegue uma amostra de registros da parte superior do conjunto de dados pela contagem especificada.

take(count)

Parâmetros

Name Description
count
Necessário
int

O número de registos a fazer.

Devoluções

Tipo Description

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

take_sample

Pegue uma amostra aleatória de registros no conjunto de dados aproximadamente pela probabilidade especificada.

take_sample(probability, seed=None)

Parâmetros

Name Description
probability
Necessário

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

seed
Necessário
int

Semente opcional para usar no gerador aleatório.

Devoluções

Tipo Description

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

time_after

Filtre 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

Name Description
start_time
Necessário

O limite inferior para filtrar dados.

include_boundary
Necessário

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

validate
Necessá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 esteja acessível a partir da computação atual.

Devoluções

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

time_before

Filtre 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

Name Description
end_time
Necessário

Limite superior para filtragem de dados.

include_boundary
Necessário

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

validate
Necessá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 esteja acessível a partir da computação atual.

Devoluções

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

time_between

Filtre 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

Name Description
start_time
Necessário

O limite inferior para filtrar dados.

end_time
Necessário

O limite superior para a filtragem de dados.

include_boundary
Necessário

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

validate
Necessá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 esteja acessível a partir da computação atual.

Devoluções

Tipo Description

Um TabularDataset com o novo conjunto de dados filtrado.

time_recent

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

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

Parâmetros

Name Description
time_delta
Necessário

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

include_boundary
Necessário

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

validate
Necessá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 esteja acessível a partir da computação atual.

Devoluções

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 correspondendo 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

Name Description
separator
Necessário
str

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

Devoluções

Tipo Description

Retorna um novo objeto FileDataset com um conjunto de arquivos CSV contendo os dados nesse conjunto de dados.

to_dask_dataframe

Observação

Este é 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 ler preguiçosamente os dados no conjunto de dados.

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

Parâmetros

Name Description
sample_size
Necessário

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

dtypes
Necessário

Um ditado opcional especificando as colunas esperadas e seus dtypes. sample_size é ignorado se isso for fornecido.

on_error
Necessário

Como lidar com quaisquer 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 null; e «falhar», o que resultará numa exceção.

out_of_range_datetime
Necessário

Como lidar com valores de data-hora que estão fora do intervalo suportado pelo Pandas. Os valores válidos são 'null', o que os substitui por null; e «falhar», o que resultará numa exceção.

Devoluções

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

Name Description
on_error
Necessário

Como lidar com quaisquer 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 null; e «falhar», o que resultará numa exceção.

out_of_range_datetime
Necessário

Como lidar com valores de data-hora que estão fora do intervalo suportado pelo Pandas. Os valores válidos são 'null', o que os substitui por null; e «falhar», o que resultará numa exceção.

Devoluções

Tipo Description

Retorna um DataFrame pandas.

to_parquet_files

Converta o conjunto de dados atual em um FileDataset contendo 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 são materializados até que sejam baixados ou lidos.

to_parquet_files()

Devoluções

Tipo Description

Retorna um novo objeto FileDataset com um conjunto de arquivos Parquet contendo os dados nesse conjunto de dados.

to_spark_dataframe

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

to_spark_dataframe()

Devoluções

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

Name Description
timestamp
Necessário
str

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

partition_timestamp
Necessário
str

O nome da coluna partition_timestamp (costumava ser referido como carimbo de data/hora de grão grosso) (opcional). O padrão é None(clear).

validate
Necessá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 esteja acessível a partir da computação atual.

Devoluções

Tipo Description

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

Observações

O método define 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éries cronológicas e habilitar recursos adicionais. Quando um conjunto de dados tem ambos e timestamp (used to be referred as fine_grain_timestamp)partition_timestamp (used to be referred as coarse grain timestamp) especificado, as duas colunas devem representar a mesma linha do tempo.

Atributos

timestamp_columns

Retorne as colunas de carimbo de data/hora.

Devoluções

Tipo Description
(str, str)

Os nomes das colunas para carimbo de data/hora (costumava ser referido como fine_grain_timestamp) e partition_timestamp (costumava ser referido como carimbo de data/hora de grão grosso) definidos para o conjunto de dados.