Partager via


TabularDataset Classe

Représente le jeu de données tabulaire à utiliser dans Azure Machine Learning.

Un TabularDataset définit une série d’opérations immuables et évaluées tardivement pour charger les données de la source de données dans une représentation tabulaire. Les données ne sont pas chargées à partir de la source tant que le TabularDataset n’est pas invité à fournir les données.

Le TabularDataset est créé à l’aide de méthodes telles que from_delimited_files de la classe TabularDatasetFactory.

Pour plus d’informations, consultez l’article Ajouter & inscrire des jeux de données. Pour commencer à utiliser un jeu de données tabulaire, consultez https://aka.ms/tabulardataset-samplenotebook.

Initialiser un objet TabularDataset.

Ce constructeur n’est pas censé être appelé directement. Le jeu de données est destiné à être créé à l’aide de la TabularDatasetFactory classe .

Héritage
TabularDataset

Constructeur

TabularDataset()

Remarques

Un TabularDataset peut être créé à partir de fichiers CSV, TSV, Parquet ou d’une requête SQL à l’aide des méthodes from_* de la classe TabularDatasetFactory. Vous pouvez effectuer des opérations de sous-ensemble sur un TabularDataset comme fractionner, ignorer et filtrer des enregistrements. Une opération de sous-ensemble a toujours pour résultat un ou plusieurs nouveaux objets TabularDataset.

Vous pouvez aussi convertir un TabularDataset dans d’autres formats comme un dataframe Pandas. Le chargement effectif des données se produit quand il est demandé au TabularDataset de livrer les données dans un autre mécanisme de stockage (par exemple, dataframe Pandas ou fichier CSV).

Un TabularDataset peut servir d’entrée pour une exécution d’expérience. Il peut également être inscrit dans l’espace de travail avec un nom spécifié et être récupéré ultérieurement avec ce nom.

Méthodes

download

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Télécharge les flux de fichiers définis par le jeu de données au chemin d'accès local.

drop_columns

Supprimer les colonnes spécifiées du jeu de données.

Si une colonne timeseries est supprimée, les fonctionnalités correspondantes seront également supprimées pour le jeu de données retourné.

filter

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Filtrer les données, en laissant uniquement les enregistrements qui correspondent à l’expression spécifiée.

get_profile

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Obtient le profil de données de la dernière exécution de profil envoyée pour ce jeu de données ou le même jeu de données dans l’espace de travail.

get_profile_runs

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Retourne les exécutions de profil précédentes associées à ce jeu de données ou au même jeu de données dans l’espace de travail.

keep_columns

Conserver les colonnes spécifiées et supprimer toutes les autres du jeu de données.

Si une colonne timeseries est supprimée, les fonctionnalités correspondantes seront également supprimées pour le jeu de données retourné.

mount

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Crée un gestionnaire de contexte pour monter les flux de fichiers définis par le jeu de données comme étant des fichiers locaux.

partition_by

Les données partitionnées sont copiées et une sortie est créée vers la destination spécifiée par la cible.

Créer le jeu de données à partir du chemin d’accès aux données en sortie avec le format de partition, inscrire le jeu de données si le nom est fourni, retourner le jeu de données pour le nouveau chemin d’accès aux données avec des partitions


   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

Fractionne les enregistrements du jeu de données en deux parties de façon aléatoire et approximative selon le pourcentage spécifié.

Le premier jeu de données contient environ percentage du nombre total d’enregistrements et le deuxième jeu de données contient les enregistrements restants.

skip

Ignore les enregistrements en partant du haut du jeu de données selon le nombre spécifié.

submit_profile_run

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Envoie une exécution d’expérience pour calculer le profil de données.

Un profil de données peut être très utile pour comprendre les données d’entrée, identifier les anomalies et les valeurs manquantes en fournissant des informations utiles sur les données telles que le type de colonne, les valeurs manquantes, etc.

take

Prend un échantillon d’enregistrements en partant du haut du jeu de données selon le nombre spécifié.

take_sample

Prend un échantillon aléatoire d’enregistrements du jeu de données, approximativement d’après la probabilité spécifiée.

time_after

Filtre TabularDataset avec des colonnes d’horodatage après une heure de début spécifiée.

time_before

Filtre TabularDataset avec les colonnes d’horodatage avant l’heure de fin spécifiée.

time_between

Filtre TabularDataset entre les heures de début et de fin spécifiées.

time_recent

Filtre TabularDataset pour qu’il contienne uniquement la durée spécifiée (quantité) des données récentes.

to_csv_files

Convertit le jeu de données actuel en FileDataset contenant des fichiers CSV.

Le jeu de données obtenu contient un ou plusieurs fichiers CSV, chacun correspondant à une partition de données du jeu de données actuel. Ces fichiers ne sont pas matérialisés tant qu’ils ne sont pas téléchargés ou lus.

to_dask_dataframe

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Retourne un dataframe Dask qui peut lire tardivement les données dans le jeu de données.

to_pandas_dataframe

Charge tous les enregistrements du jeu de données dans un dataframe Pandas.

to_parquet_files

Convertit le jeu de données actuel en FileDataset contenant des fichiers Parquet.

Le jeu de données obtenu contient un ou plusieurs fichiers Parquet, chacun correspondant à une partition de données du jeu de données actuel. Ces fichiers ne sont pas matérialisés tant qu’ils ne sont pas téléchargés ou lus.

to_spark_dataframe

Charger tous les enregistrements du jeu de données dans un dataframe Spark.

with_timestamp_columns

Définit des colonnes timestamp pour le jeu de données.

download

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Télécharge les flux de fichiers définis par le jeu de données au chemin d'accès local.

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

Paramètres

Nom Description
stream_column
Obligatoire
str

Colonne de flux à télécharger.

target_path
Obligatoire
str

Répertoire local dans lequel télécharger les fichiers. Si la valeur est définie sur None, les données sont téléchargées dans un répertoire temporaire.

overwrite
Obligatoire

Indique si les fichiers existants doivent être remplacés. La valeur par défaut est False. Les fichiers existants seront remplacés si le remplacement a la valeur True. Sinon, une exception est levée.

ignore_not_found
Obligatoire

Indique s’il faut faire échouer le téléchargement si certains fichiers pointés par le jeu de données sont introuvables. La valeur par défaut est True. Le téléchargement échouera en cas d’échec du téléchargement d’un fichier pour une raison quelconque si ignore_not_found est défini sur False ; dans le cas contraire, un avertissement sera enregistré pour les erreurs de type introuvable et le téléchargement réussira tant qu’aucun autre type d’erreur ne se produit.

Retours

Type Description

Retourne un tableau de chemins de fichier pour chaque fichier téléchargé.

drop_columns

Supprimer les colonnes spécifiées du jeu de données.

Si une colonne timeseries est supprimée, les fonctionnalités correspondantes seront également supprimées pour le jeu de données retourné.

drop_columns(columns)

Paramètres

Nom Description
columns
Obligatoire

Nom ou liste des noms des colonnes à supprimer.

Retours

Type Description

Retourne un nouvel objet TabularDataset avec les colonnes spécifiées supprimées.

filter

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Filtrer les données, en laissant uniquement les enregistrements qui correspondent à l’expression spécifiée.

filter(expression)

Paramètres

Nom Description
expression
Obligatoire
any

Expression à évaluer.

Retours

Type Description

Jeu de données modifié (non inscrit).

Remarques

Les expressions sont démarrées en indexant le jeu de données avec le nom d’une colonne. Elles prennent en charge un large éventail de fonctions et d’opérateurs et peuvent être combinées à l’aide d’opérateurs logiques. L’expression résultante sera évaluée tardivement pour chaque enregistrement quand une opération d’extraction de données se produit et pas où elle est définie.


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

get_profile

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Obtient le profil de données de la dernière exécution de profil envoyée pour ce jeu de données ou le même jeu de données dans l’espace de travail.

get_profile(workspace=None)

Paramètres

Nom Description
workspace
Obligatoire

Espace de travail dans lequel l’exécution du profil a été envoyée. La valeur par défaut est l’espace de travail de ce jeu de données. Nécessaire si le jeu de données n’est associé à aucun espace de travail. Pour plus d’informations sur les espaces de travail, consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace.

Retours

Type Description

Résultat du profil de la dernière exécution du profil de type DatasetProfile.

get_profile_runs

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Retourne les exécutions de profil précédentes associées à ce jeu de données ou au même jeu de données dans l’espace de travail.

get_profile_runs(workspace=None)

Paramètres

Nom Description
workspace
Obligatoire

Espace de travail dans lequel l’exécution du profil a été envoyée. La valeur par défaut est l’espace de travail de ce jeu de données. Nécessaire si le jeu de données n’est associé à aucun espace de travail. Pour plus d’informations sur les espaces de travail, consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace.

Retours

Type Description

objet énumérateur de type azureml.core.Run.

keep_columns

Conserver les colonnes spécifiées et supprimer toutes les autres du jeu de données.

Si une colonne timeseries est supprimée, les fonctionnalités correspondantes seront également supprimées pour le jeu de données retourné.

keep_columns(columns, validate=False)

Paramètres

Nom Description
columns
Obligatoire

Nom ou liste de noms des noms des colonnes à conserver.

validate
Obligatoire

Indique s’il faut vérifier si les données peuvent être chargées à partir du jeu de données retourné. La valeur par défaut est False. La validation nécessite que la source de données soit accessible à partir du calcul actuel.

Retours

Type Description

Retourne un nouvel objet TabularDataset avec uniquement les colonnes spécifiées conservées.

mount

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Crée un gestionnaire de contexte pour monter les flux de fichiers définis par le jeu de données comme étant des fichiers locaux.

mount(stream_column, mount_point=None)

Paramètres

Nom Description
stream_column
Obligatoire
str

Colonne de flux à monter.

mount_point
Obligatoire
str

Répertoire local dans lequel les fichiers doivent être montés. Si la valeur est définie sur None, les données sont montées dans un répertoire temporaire, que vous pouvez trouver en appelant la méthode d’instance MountContext.mount_point.

Retours

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

Retourne un gestionnaire de contexte pour gérer le cycle de vie du montage.

partition_by

Les données partitionnées sont copiées et une sortie est créée vers la destination spécifiée par la cible.

Créer le jeu de données à partir du chemin d’accès aux données en sortie avec le format de partition, inscrire le jeu de données si le nom est fourni, retourner le jeu de données pour le nouveau chemin d’accès aux données avec des partitions


   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)

Paramètres

Nom Description
partition_keys
Obligatoire

Obligatoire, clés de partition

target
Obligatoire

Obligatoire, chemin d’accès au magasin de données où les données Parquet de dataframe sont chargées. Un dossier GUID est généré sous le chemin cible pour éviter tout conflit.

name
Obligatoire
str

Facultatif, nom d’inscription.

show_progress
Obligatoire

Facultatif. Indique s’il est nécessaire d’afficher la progression du chargement dans la console. La valeur par défaut est True.

partition_as_file_dataset
Obligatoire

Facultatif. Indique si un filedataset doit être retourné ou non. La valeur par défaut est False.

Retours

Type Description

Jeu de données enregistré ou inscrit.

random_split

Fractionne les enregistrements du jeu de données en deux parties de façon aléatoire et approximative selon le pourcentage spécifié.

Le premier jeu de données contient environ percentage du nombre total d’enregistrements et le deuxième jeu de données contient les enregistrements restants.

random_split(percentage, seed=None)

Paramètres

Nom Description
percentage
Obligatoire

Pourcentage approximatif à utiliser pour le découpage du jeu de données. Il doit s’agir d’un nombre compris entre 0,0 et 1,0.

seed
Obligatoire
int

Valeur initiale facultative à utiliser pour le générateur aléatoire.

Retours

Type Description

Retourne un tuple de nouveaux objets TabularDataset représentant les deux jeux de données après le fractionnement.

skip

Ignore les enregistrements en partant du haut du jeu de données selon le nombre spécifié.

skip(count)

Paramètres

Nom Description
count
Obligatoire
int

Nombre d'enregistrements à ignorer.

Retours

Type Description

Retourne un nouvel objet TabularDataset qui représente un jeu de données dont les enregistrements ont été ignorés.

submit_profile_run

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Envoie une exécution d’expérience pour calculer le profil de données.

Un profil de données peut être très utile pour comprendre les données d’entrée, identifier les anomalies et les valeurs manquantes en fournissant des informations utiles sur les données telles que le type de colonne, les valeurs manquantes, etc.

submit_profile_run(compute_target, experiment, cache_datastore_name=None)

Paramètres

Nom Description
compute_target
Obligatoire

Cible de calcul sur laquelle exécuter l’expérience de calcul de profil. Spécifier « local » pour utiliser le calcul local. Pour plus d’informations sur les cibles de calcul, consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.computetarget.

experiment
Obligatoire

Objet d’expérience. Pour plus d’informations sur les expériences, consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.experiment.experiment.

cache_datastore_name
Obligatoire
str

le nom du magasin de données dans lequel stocker le cache de profil. Si la valeur est None, le magasin de données par défaut sera utilisé

Retours

Type Description

Objet de type classe DatasetProfileRun.

take

Prend un échantillon d’enregistrements en partant du haut du jeu de données selon le nombre spécifié.

take(count)

Paramètres

Nom Description
count
Obligatoire
int

Nombre d’enregistrements à prendre.

Retours

Type Description

Retourne un nouvel objet TabularDataset représentant le jeu de données échantillonné.

take_sample

Prend un échantillon aléatoire d’enregistrements du jeu de données, approximativement d’après la probabilité spécifiée.

take_sample(probability, seed=None)

Paramètres

Nom Description
probability
Obligatoire

Probabilité qu’un enregistrement soit inclus dans l’échantillon.

seed
Obligatoire
int

Valeur initiale facultative à utiliser pour le générateur aléatoire.

Retours

Type Description

Retourne un nouvel objet TabularDataset représentant le jeu de données échantillonné.

time_after

Filtre TabularDataset avec des colonnes d’horodatage après une heure de début spécifiée.

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

Paramètres

Nom Description
start_time
Obligatoire

Limite inférieure pour le filtrage de données.

include_boundary
Obligatoire

Indique si la ligne associée à l’heure limite (start_time) doit être incluse.

validate
Obligatoire

Indique s’il faut vérifier si les colonnes spécifiées existent dans le jeu de données. La valeur par défaut est True. La validation nécessite que la source de données soit accessible à partir du calcul actuel.

Retours

Type Description

TabularDataset avec le nouveau jeu de données filtré.

time_before

Filtre TabularDataset avec les colonnes d’horodatage avant l’heure de fin spécifiée.

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

Paramètres

Nom Description
end_time
Obligatoire

Limite supérieure pour le filtrage de données.

include_boundary
Obligatoire

Indique si la ligne associée à l’heure limite (end_time) doit être incluse.

validate
Obligatoire

Indique s’il faut vérifier si les colonnes spécifiées existent dans le jeu de données. La valeur par défaut est True. La validation nécessite que la source de données soit accessible à partir du calcul actuel.

Retours

Type Description

TabularDataset avec le nouveau jeu de données filtré.

time_between

Filtre TabularDataset entre les heures de début et de fin spécifiées.

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

Paramètres

Nom Description
start_time
Obligatoire

Limite inférieure pour le filtrage de données.

end_time
Obligatoire

Limite supérieure pour le filtrage de données.

include_boundary
Obligatoire

Indique si la ligne associée à l’heure limite (start_end et end_time) doit être incluse.

validate
Obligatoire

Indique s’il faut vérifier si les colonnes spécifiées existent dans le jeu de données. La valeur par défaut est True. La validation nécessite que la source de données soit accessible à partir du calcul actuel.

Retours

Type Description

TabularDataset avec le nouveau jeu de données filtré.

time_recent

Filtre TabularDataset pour qu’il contienne uniquement la durée spécifiée (quantité) des données récentes.

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

Paramètres

Nom Description
time_delta
Obligatoire

Durée (quantité) des données récentes à récupérer.

include_boundary
Obligatoire

Indique si la ligne associée à l’heure limite (time_delta) doit être incluse.

validate
Obligatoire

Indique s’il faut vérifier si les colonnes spécifiées existent dans le jeu de données. La valeur par défaut est True. La validation nécessite que la source de données soit accessible à partir du calcul actuel.

Retours

Type Description

TabularDataset avec le nouveau jeu de données filtré.

to_csv_files

Convertit le jeu de données actuel en FileDataset contenant des fichiers CSV.

Le jeu de données obtenu contient un ou plusieurs fichiers CSV, chacun correspondant à une partition de données du jeu de données actuel. Ces fichiers ne sont pas matérialisés tant qu’ils ne sont pas téléchargés ou lus.

to_csv_files(separator=',')

Paramètres

Nom Description
separator
Obligatoire
str

Séparateur à utiliser pour séparer les valeurs dans le fichier obtenu.

Retours

Type Description

Retourne un nouvel objet FileDataset avec un ensemble de fichiers CSV contenant les données de ce jeu de données.

to_dask_dataframe

Notes

Il s’agit d’une méthode expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Retourne un dataframe Dask qui peut lire tardivement les données dans le jeu de données.

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

Paramètres

Nom Description
sample_size
Obligatoire

Nombre d’enregistrements à lire pour déterminer le schéma et les types.

dtypes
Obligatoire

Dict facultatif spécifiant les colonnes attendues et leur dtypes. La valeur sample_size est ignorée si elle est fournie.

on_error
Obligatoire

Comment gérer les valeurs d’erreur dans le jeu de données, telles que celles produites par une erreur lors de l’analyse des valeurs. Les valeurs valides sont 'null' qui les remplace par null et 'fail' qui entraîne une exception.

out_of_range_datetime
Obligatoire

Comment gérer les valeurs de date et d’heure qui se trouvent en dehors de la plage prise en charge par Pandas. Les valeurs valides sont 'null' qui les remplace par null et 'fail' qui entraîne une exception.

Retours

Type Description

dask.dataframe.core.DataFrame

to_pandas_dataframe

Charge tous les enregistrements du jeu de données dans un dataframe Pandas.

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

Paramètres

Nom Description
on_error
Obligatoire

Comment gérer les valeurs d’erreur dans le jeu de données, telles que celles produites par une erreur lors de l’analyse des valeurs. Les valeurs valides sont 'null' qui les remplace par null et 'fail' qui entraîne une exception.

out_of_range_datetime
Obligatoire

Comment gérer les valeurs de date et d’heure qui se trouvent en dehors de la plage prise en charge par Pandas. Les valeurs valides sont 'null' qui les remplace par null et 'fail' qui entraîne une exception.

Retours

Type Description

Retourne un DataFrame pandas.

to_parquet_files

Convertit le jeu de données actuel en FileDataset contenant des fichiers Parquet.

Le jeu de données obtenu contient un ou plusieurs fichiers Parquet, chacun correspondant à une partition de données du jeu de données actuel. Ces fichiers ne sont pas matérialisés tant qu’ils ne sont pas téléchargés ou lus.

to_parquet_files()

Retours

Type Description

Retourne un nouvel objet FileDataset avec un ensemble de fichiers Parquet contenant les données de ce jeu de données.

to_spark_dataframe

Charger tous les enregistrements du jeu de données dans un dataframe Spark.

to_spark_dataframe()

Retours

Type Description

Retourne un dataframe Spark.

with_timestamp_columns

Définit des colonnes timestamp pour le jeu de données.

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

Paramètres

Nom Description
timestamp
Obligatoire
str

Nom de la colonne en tant qu’horodateur (utilisé pour être désigné comme fine_grain_timestamp) (facultatif). La valeur par défaut est None (vide).

partition_timestamp
Obligatoire
str

Nom de la colonne partition_timestamp (utilisé pour être désigné comme horodateur de grain grossier) (facultatif). La valeur par défaut est None (vide).

validate
Obligatoire

Indique s’il faut vérifier si les colonnes spécifiées existent dans le jeu de données. La valeur par défaut est False. La validation nécessite que la source de données soit accessible à partir du calcul actuel.

Retours

Type Description

Retourne un nouveau TabularDataset avec des colonnes timestamp définies.

Remarques

La méthode définit les colonnes à utiliser comme horodateurs. Les colonnes timestamp d’un jeu de données permettent de traiter les données comme des données de série chronologique et d’activer des fonctionnalités supplémentaires. Quand timestamp (used to be referred as fine_grain_timestamp) et partition_timestamp (used to be referred as coarse grain timestamp) sont tous deux spécifiés pour un jeu de données, les deux colonnes doivent représenter la même chronologie.

Attributs

timestamp_columns

Retourne les colonnes timestamp.

Retours

Type Description
(str, str)

Noms de colonnes pour timestamp (used to be referred as fine_grain_timestamp) et partition_timestamp (used to be referred as coarse grain timestamp) définis pour le jeu de données.