TabularDataset Classe
Representa um conjunto de dados tabular a utilizar no Azure Machine Learning.
Um TabularDataset define uma série de operações imutáveis e avaliadas de forma preguiçosa para carregar dados da origem de dados para representação tabular. Os dados não são carregados a partir da origem até que tabularDataset seja solicitado a entregar dados.
TabularDataset é criado com métodos como from_delimited_files da TabularDatasetFactory classe.
Para obter mais informações, veja o artigo Adicionar & registar 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 com a TabularDatasetFactory classe.
- Herança
-
TabularDataset
Construtor
TabularDataset()
Observações
Um TabularDataset pode ser criado a partir de CSV, TSV, ficheiros Parquet ou consulta SQL com os from_*
métodos da TabularDatasetFactory classe. Pode realizar operações de subsetting num TabularDataset, como dividir, ignorar e filtrar registos.
O resultado da subsetting é sempre um ou mais novos objetos TabularDataset.
Também pode converter um TabularDataset noutros formatos, como um DataFrame do pandas. O carregamento real de dados ocorre quando é pedido a TabularDataset que entregue os dados noutro mecanismo de armazenamento (por exemplo, um Dataframe do Pandas ou um ficheiro CSV).
TabularDataset pode ser utilizado como entrada de uma execução de experimentação. Também pode ser registado na área de trabalho com um nome especificado e ser obtido por esse nome mais tarde.
Métodos
download |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Transfira fluxos de ficheiros definidos pelo conjunto de dados para o caminho local. |
drop_columns |
Largue as colunas especificadas do conjunto de dados. Se uma coluna de série de tempo for removida, as capacidades correspondentes também serão removidas para o conjunto de dados devolvido. |
filter |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Filtre os dados, deixando apenas os registos que correspondem à expressão especificada. |
get_profile |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Obtenha o perfil de dados da execução de perfil mais recente submetida para este ou o mesmo conjunto de dados na área de trabalho. |
get_profile_runs |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Devolver execuções de perfis anteriores associadas a este ou ao mesmo conjunto de dados na área de trabalho. |
keep_columns |
Mantenha as colunas especificadas e deixe cair todas as outras do conjunto de dados. Se uma coluna de série de tempo for removida, as capacidades correspondentes também serão removidas para o conjunto de dados devolvido. |
mount |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Crie um gestor de contexto para montar fluxos de ficheiros definidos pelo conjunto de dados como ficheiros locais. |
partition_by |
Os dados particionados serão copiados e serão exportados para o destino especificado pelo destino. criar o conjunto de dados a partir do caminho de dados saída com o formato de partição, registar o conjunto de dados se for fornecido o nome, devolver o conjunto de dados para o novo caminho de dados com partições
|
random_split |
Divida os registos no conjunto de dados em duas partes aleatoriamente e aproximadamente pela percentagem especificada. O primeiro conjunto de dados contém aproximadamente |
skip |
Ignore os registos da parte superior do conjunto de dados pela contagem especificada. |
submit_profile_run |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Submeta 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 ao fornecer informações úteis sobre os dados, como o tipo de coluna, valores em falta, etc. |
take |
Recolha um exemplo de registos na parte superior do conjunto de dados pela contagem especificada. |
take_sample |
Recolha uma amostra aleatória de registos 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 fim especificada. |
time_between |
Filtre TabularDataset entre uma hora de início e de fim especificada. |
time_recent |
Filtre TabularDataset para conter apenas a duração especificada (quantidade) de dados recentes. |
to_csv_files |
Converta o conjunto de dados atual num FileDataset com ficheiros CSV. O conjunto de dados resultante irá conter um ou mais ficheiros CSV, cada um correspondente a uma partição de dados do conjunto de dados atual. Estes ficheiros não são materializados até serem transferidos ou lidos. |
to_dask_dataframe |
Nota Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental. Devolva um Dask DataFrame que pode ler os dados de forma preguiçosa no conjunto de dados. |
to_pandas_dataframe |
Carregue todos os registos do conjunto de dados para um DataFrame pandas. |
to_parquet_files |
Converta o conjunto de dados atual num FileDataset que contenha ficheiros Parquet. O conjunto de dados resultante irá conter um ou mais ficheiros Parquet, cada um correspondente a uma partição de dados do conjunto de dados atual. Estes ficheiros não são materializados até serem transferidos ou lidos. |
to_spark_dataframe |
Carregue todos os registos do conjunto de dados para um DataFrame do Spark. |
with_timestamp_columns |
Defina colunas de carimbo de data/hora para o conjunto de dados. |
download
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Transfira fluxos de ficheiros 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
|
A coluna de transmissão em fluxo a transferir. |
target_path
Necessário
|
O diretório local para o quais transferir os ficheiros. Se Nenhum, os dados serão transferidos para um diretório temporário. |
overwrite
Necessário
|
Indica se deve substituir ficheiros existentes. A predefinição é Falso. Os ficheiros existentes serão substituídos se a substituição estiver definida como Verdadeiro; caso contrário, será gerada uma exceção. |
ignore_not_found
Necessário
|
Indica se a transferência pós-falha se alguns ficheiros apontados por conjunto de dados não forem encontrados. A predefinição é Verdadeiro. A transferência falhará se alguma transferência de ficheiro falhar por algum motivo se ignore_not_found estiver definida como Falso; caso contrário, será registado um waring para erros não encontrados e o dowload será bem-sucedido, desde que não sejam encontrados outros tipos de erro. |
Devoluções
Tipo | Description |
---|---|
Devolve uma matriz de caminhos de ficheiro para cada ficheiro transferido. |
drop_columns
Largue as colunas especificadas do conjunto de dados.
Se uma coluna de série de tempo for removida, as capacidades correspondentes também serão removidas para o conjunto de dados devolvido.
drop_columns(columns)
Parâmetros
Name | Description |
---|---|
columns
Necessário
|
O nome ou uma lista de nomes para as colunas largarem. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto TabularDataset com as colunas especificadas removidas. |
filter
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Filtre os dados, deixando apenas os registos que correspondem à expressão especificada.
filter(expression)
Parâmetros
Name | Description |
---|---|
expression
Necessário
|
A expressão a avaliar. |
Devoluções
Tipo | Description |
---|---|
O conjunto de dados modificado (não registado). |
Observações
As expressões são iniciadas ao indexar o Conjunto de Dados com o nome de uma coluna. Suportam uma variedade de funções e operadores e podem ser combinados com operadores lógicos. A expressão resultante será avaliada preguiçosamente para cada registo quando ocorrer uma solicitação de dados e não onde está definida.
dataset['myColumn'] > dataset['columnToCompareAgainst']
dataset['myColumn'].starts_with('prefix')
get_profile
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Obtenha o perfil de dados da execução de perfil mais recente submetida para este ou o mesmo conjunto de dados na área de trabalho.
get_profile(workspace=None)
Parâmetros
Name | Description |
---|---|
workspace
Necessário
|
A área de trabalho onde a execução do perfil foi submetida. Predefinição para a área de trabalho deste conjunto de dados. Necessário se o conjunto de dados não estiver associado a uma área de trabalho. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace para obter mais informações sobre áreas de trabalho. |
Devoluções
Tipo | Description |
---|---|
Resultado do perfil da execução de perfil mais recente do tipo DatasetProfile. |
get_profile_runs
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Devolver execuções de perfis anteriores associadas a este ou ao mesmo conjunto de dados na área de trabalho.
get_profile_runs(workspace=None)
Parâmetros
Name | Description |
---|---|
workspace
Necessário
|
A área de trabalho onde a execução do perfil foi submetida. Predefinição para a área de trabalho deste conjunto de dados. Necessário se o conjunto de dados não estiver associado a uma área de trabalho. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace para obter mais informações sobre áreas de trabalho. |
Devoluções
Tipo | Description |
---|---|
objeto iterador do tipo azureml.core.Run. |
keep_columns
Mantenha as colunas especificadas e deixe cair todas as outras do conjunto de dados.
Se uma coluna de série de tempo for removida, as capacidades correspondentes também serão removidas para o conjunto de dados devolvido.
keep_columns(columns, validate=False)
Parâmetros
Name | Description |
---|---|
columns
Necessário
|
O nome ou uma lista de nomes para as colunas a manter. |
validate
Necessário
|
Indica se deve validar se os dados podem ser carregados a partir do conjunto de dados devolvido. A predefinição é Falso. A validação requer que a origem de dados esteja acessível a partir da computação atual. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto TabularDataset apenas com as colunas especificadas guardadas. |
mount
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Crie um gestor de contexto para montar fluxos de ficheiros definidos pelo conjunto de dados como ficheiros locais.
mount(stream_column, mount_point=None)
Parâmetros
Name | Description |
---|---|
stream_column
Necessário
|
A coluna de fluxo a montar. |
mount_point
Necessário
|
O diretório local para onde montar os ficheiros. Se Nenhum, os dados serão montados num diretório temporário, que pode encontrar ao chamar o método de instância MountContext.mount_point . |
Devoluções
Tipo | Description |
---|---|
<xref:azureml.dataprep.fuse.daemon.MountContext>
|
Devolve um gestor de contexto para gerir o ciclo de vida da montagem. |
partition_by
Os dados particionados serão copiados e serão exportados para o destino especificado pelo destino.
criar o conjunto de dados a partir do caminho de dados saída com o formato de partição, registar o conjunto de dados se for fornecido o nome, devolver 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 arquivo de dados para o qual os dados parquet do dataframe serão carregados. Será gerada uma pasta guid no caminho de destino para evitar conflitos. |
name
Necessário
|
Opcional: O nome do registo. |
show_progress
Necessário
|
Opcional, indica se pretende mostrar o progresso do carregamento na consola. As predefinições são Verdadeiras. |
partition_as_file_dataset
Necessário
|
Opcional, indica se devolve ou não um conjunto de dados arquivado. A predefinição é Falso. |
Devoluções
Tipo | Description |
---|---|
O conjunto de dados guardado ou registado. |
random_split
Divida os registos no conjunto de dados em duas partes aleatoriamente e aproximadamente pela percentagem especificada.
O primeiro conjunto de dados contém aproximadamente percentage
o total de registos e o segundo conjunto de dados os registos restantes.
random_split(percentage, seed=None)
Parâmetros
Name | Description |
---|---|
percentage
Necessário
|
A percentagem aproximada pela qual dividir o conjunto de dados. Tem de ser um número entre 0,0 e 1,0. |
seed
Necessário
|
Semente opcional a utilizar para o gerador aleatório. |
Devoluções
Tipo | Description |
---|---|
Devolve uma cadeia de identificação de novos objetos TabularDataset que representam os dois conjuntos de dados após a divisão. |
skip
Ignore os registos da parte superior do conjunto de dados pela contagem especificada.
skip(count)
Parâmetros
Name | Description |
---|---|
count
Necessário
|
O número de registos a ignorar. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto TabularDataset que representa um conjunto de dados com registos ignorados. |
submit_profile_run
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Submeta 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 ao fornecer informações úteis sobre os dados, como o 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 para executar a experimentação de cálculo do perfil. Especifique "local" para utilizar a computação local. Veja 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 de experimentação. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.experiment.experiment para obter mais informações sobre experimentações. |
cache_datastore_name
Necessário
|
o nome do arquivo de dados para armazenar a cache de perfil, se Nenhum, será utilizado o arquivo de dados predefinido |
Devoluções
Tipo | Description |
---|---|
Um objeto do tipo DatasetProfileRun classe. |
take
Recolha um exemplo de registos na parte superior do conjunto de dados pela contagem especificada.
take(count)
Parâmetros
Name | Description |
---|---|
count
Necessário
|
O número de registos a ter. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto TabularDataset que representa o conjunto de dados de exemplo. |
take_sample
Recolha uma amostra aleatória de registos 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 no exemplo. |
seed
Necessário
|
Semente opcional a utilizar para o gerador aleatório. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto TabularDataset que representa o conjunto de dados de exemplo. |
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 de limite ( |
validate
Necessário
|
Indica se deve validar se existem colunas especificadas no conjunto de dados. A predefinição é Verdadeiro. A validação requer que a origem 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 fim especificada.
time_before(end_time, include_boundary=True, validate=True)
Parâmetros
Name | Description |
---|---|
end_time
Necessário
|
Limite superior para filtrar dados. |
include_boundary
Necessário
|
Indique se a linha associada ao tempo de limite ( |
validate
Necessário
|
Indica se deve validar se existem colunas especificadas no conjunto de dados. A predefinição é Verdadeiro. A validação requer que a origem 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 fim 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 filtrar dados. |
include_boundary
Necessário
|
Indique se a linha associada ao tempo de limite ( |
validate
Necessário
|
Indica se deve validar se existem colunas especificadas no conjunto de dados. A predefinição é Verdadeiro. A validação requer que a origem 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) de dados recentes.
time_recent(time_delta, include_boundary=True, validate=True)
Parâmetros
Name | Description |
---|---|
time_delta
Necessário
|
A duração (quantidade) de dados recentes a obter. |
include_boundary
Necessário
|
Indique se a linha associada ao tempo de limite ( |
validate
Necessário
|
Indica se deve validar se existem colunas especificadas no conjunto de dados. A predefinição é Verdadeiro. A validação requer que a origem 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 num FileDataset com ficheiros CSV.
O conjunto de dados resultante irá conter um ou mais ficheiros CSV, cada um correspondente a uma partição de dados do conjunto de dados atual. Estes ficheiros não são materializados até serem transferidos ou lidos.
to_csv_files(separator=',')
Parâmetros
Name | Description |
---|---|
separator
Necessário
|
O separador a utilizar para separar valores no ficheiro resultante. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto FileDataset com um conjunto de ficheiros CSV que contém os dados neste conjunto de dados. |
to_dask_dataframe
Nota
Este é um método experimental e pode ser alterado em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.
Devolva um Dask DataFrame 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
Name | Description |
---|---|
sample_size
Necessário
|
O número de registos a ler para determinar o esquema e os tipos. |
dtypes
Necessário
|
Um ditado opcional que especifica as colunas esperadas e os respetivos tipos. sample_size é ignorada se for fornecida. |
on_error
Necessário
|
Como lidar com quaisquer valores de erro no conjunto de dados, como os produzidos por um erro ao analisar valores. Os valores válidos são "nulos" que os substitui por nulos; e "falha", 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 "nulos" que os substitui por nulos; e "falha", o que resultará numa exceção. |
Devoluções
Tipo | Description |
---|---|
dask.dataframe.core.DataFrame |
to_pandas_dataframe
Carregue todos os registos do conjunto de dados para 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 os produzidos por um erro ao analisar valores. Os valores válidos são "nulos" que os substitui por nulos; e "falha", 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 "nulos" que os substitui por nulos; e "falha", o que resultará numa exceção. |
Devoluções
Tipo | Description |
---|---|
Devolve um DataFrame do pandas. |
to_parquet_files
Converta o conjunto de dados atual num FileDataset que contenha ficheiros Parquet.
O conjunto de dados resultante irá conter um ou mais ficheiros Parquet, cada um correspondente a uma partição de dados do conjunto de dados atual. Estes ficheiros não são materializados até serem transferidos ou lidos.
to_parquet_files()
Devoluções
Tipo | Description |
---|---|
Devolve um novo objeto FileDataset com um conjunto de ficheiros Parquet que contém os dados neste conjunto de dados. |
to_spark_dataframe
Carregue todos os registos do conjunto de dados para um DataFrame do Spark.
to_spark_dataframe()
Devoluções
Tipo | Description |
---|---|
Devolve 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
|
O nome da coluna como carimbo de data/hora (utilizado como fine_grain_timestamp) (opcional). A predefinição é Nenhum(claro). |
partition_timestamp
Necessário
|
O nome da coluna partition_timestamp (utilizado como carimbo de data/hora de grão grosso) (opcional). A predefinição é Nenhum(claro). |
validate
Necessário
|
Indica se deve validar se existem colunas especificadas no conjunto de dados. A predefinição é Falso. A validação requer que a origem de dados esteja acessível a partir da computação atual. |
Devoluções
Tipo | Description |
---|---|
Devolve um novo TabularDataset com colunas de carimbo de data/hora definidas. |
Observações
O método define colunas a serem utilizadas como carimbos de data/hora. As colunas de carimbo de data/hora num conjunto de dados permitem tratar os dados como dados de série temporal e ativar capacidades 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 devem representar a mesma linha cronológica.