Partager via


TabularDataset Classe

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

Un TabularDataset définit une série d’opérations immuables évaluées de manière différée pour charger des 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 TabularDataset n’est pas invité à fournir des données.

TabularDataset est créé à l’aide de méthodes comme from_delimited_files à partir de la TabularDatasetFactory classe.

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

Initialisez un objet TabularDataset.

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

Constructeur

TabularDataset()

Remarques

Un TabularDataset peut être créé à partir de fichiers CSV, TSV, Parquet ou SQL à l’aide from_* des méthodes de la TabularDatasetFactory classe. Vous pouvez effectuer des opérations de sous-réinitialisation sur un TabularDataset, comme le fractionnement, l’ignorer et le filtrage des enregistrements. Le résultat de la sous-réinitialisation est toujours un ou plusieurs nouveaux objets TabularDataset.

Vous pouvez également convertir un TabularDataset en d’autres formats comme un DataFrame pandas. Le chargement réel des données se produit lorsque TabularDataset est invité à remettre les données dans un autre mécanisme de stockage (par exemple, un dataframe Pandas ou un fichier CSV).

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

Méthodes

download

Remarque

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

Téléchargez les flux de fichiers définis par le jeu de données sur le chemin d’accès local.

drop_columns

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

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

filter

Remarque

Il s’agit d’une méthode expérimentale et 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

Remarque

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

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

get_profile_runs

Remarque

Il s’agit d’une méthode expérimentale et 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 ou même jeu de données dans l’espace de travail.

keep_columns

Conservez les colonnes spécifiées et supprimez tous les autres utilisateurs du jeu de données.

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

mount

Remarque

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

Créez un gestionnaire de contexte pour le montage de flux de fichiers définis par le jeu de données en tant que fichiers locaux.

partition_by

Les données partitionnée sont copiées et sorties vers la destination spécifiée par la cible.

créer le jeu de données à partir du chemin de données généré au format de partition, inscrire le jeu de données si le nom est fourni, renvoyer le jeu de données pour le nouveau chemin de 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

Fractionnez les enregistrements du jeu de données en deux parties de manière aléatoire et approximativement par le pourcentage spécifié.

Le premier jeu de données contient environ percentage les enregistrements totaux et le deuxième jeu de données les enregistrements restants.

skip

Ignorez les enregistrements du haut du jeu de données par le nombre spécifié.

submit_profile_run

Remarque

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

Envoyez une exécution d’expérimentation 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

Prenez un exemple d’enregistrements en haut du jeu de données par le nombre spécifié.

take_sample

Prenez un échantillon aléatoire d’enregistrements dans le jeu de données approximativement par la probabilité spécifiée.

time_after

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

time_before

Filtrez TabularDataset avec des colonnes d’horodatage avant une heure de fin spécifiée.

time_between

Filtrez TabularDataset entre une heure de début et de fin spécifiée.

time_recent

Filtrez TabularDataset pour contenir uniquement la durée spécifiée (quantité) de données récentes.

to_csv_files

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

Le jeu de données résultant contient un ou plusieurs fichiers CSV, chacun correspondant à une partition de données à partir 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

Remarque

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

Retourne un DataFrame Dask qui peut lire les données de manière différée dans le jeu de données.

to_pandas_dataframe

Chargez tous les enregistrements du jeu de données dans un DataFrame pandas.

to_parquet_files

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

Le jeu de données résultant contient un ou plusieurs fichiers Parquet, chacun correspondant à une partition de données à partir 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

Chargez tous les enregistrements du jeu de données dans un DataFrame Spark.

with_timestamp_columns

Définissez des colonnes d’horodatage pour le jeu de données.

download

Remarque

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

Téléchargez les flux de fichiers définis par le jeu de données sur le 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 ce n’est pas le cas, les données sont téléchargées dans un répertoire temporaire.

overwrite
Obligatoire

Indique s’il faut remplacer les fichiers existants. La valeur par défaut est False. Les fichiers existants sont remplacés si le remplacement a la valeur True ; sinon, une exception est levée.

ignore_not_found
Obligatoire

Indique s’il faut é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 échoue si un téléchargement de fichier échoue pour une raison quelconque si ignore_not_found a la valeur False ; sinon, une waring est enregistrée pour les erreurs introuvables et le dowload réussit tant qu’aucun autre type d’erreur n’est rencontré.

Retours

Type Description

Retourne un tableau de chemins d’accès de fichier pour chaque fichier téléchargé.

drop_columns

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

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

drop_columns(columns)

Paramètres

Nom Description
columns
Obligatoire

Nom ou liste de noms pour les colonnes à supprimer.

Retours

Type Description

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

filter

Remarque

Il s’agit d’une méthode expérimentale et 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. Ils prennent en charge une variété de fonctions et d’opérateurs et peuvent être combinés à l’aide d’opérateurs logiques. L’expression résultante est évaluée de manière différée pour chaque enregistrement lorsqu’une extraction de données se produit et non pas là où elle est définie.


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

get_profile

Remarque

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

Obtenez le profil de données à partir de la dernière exécution du profil envoyé 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 où 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. Obligatoire si le jeu de données n’est pas associé à un espace de travail. Consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace pour plus d’informations sur les espaces de travail.

Retours

Type Description

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

get_profile_runs

Remarque

Il s’agit d’une méthode expérimentale et 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 ou 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 où 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. Obligatoire si le jeu de données n’est pas associé à un espace de travail. Consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.workspace.workspace pour plus d’informations sur les espaces de travail.

Retours

Type Description

Objet itérateur de type azureml.core.Run.

keep_columns

Conservez les colonnes spécifiées et supprimez tous les autres utilisateurs du jeu de données.

Si une colonne timeseries est supprimée, les fonctionnalités correspondantes sont é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 pour les 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

Remarque

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

Créez un gestionnaire de contexte pour le montage de flux de fichiers définis par le jeu de données en tant que 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 monter les fichiers. Si aucune, 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ée sont copiées et sorties vers la destination spécifiée par la cible.

créer le jeu de données à partir du chemin de données généré au format de partition, inscrire le jeu de données si le nom est fourni, renvoyer le jeu de données pour le nouveau chemin de 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 du magasin de données dans lequel les données parquet du dataframe seront chargées. Un dossier guid est généré sous le chemin cible pour éviter les conflits.

name
Obligatoire
str

Facultatif, nom de l’inscription.

show_progress
Obligatoire

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

partition_as_file_dataset
Obligatoire

Facultatif, indique si retourne un filedataset ou non. La valeur par défaut est False.

Retours

Type Description

Jeu de données enregistré ou inscrit.

random_split

Fractionnez les enregistrements du jeu de données en deux parties de manière aléatoire et approximativement par le pourcentage spécifié.

Le premier jeu de données contient environ percentage les enregistrements totaux et le deuxième jeu de données les enregistrements restants.

random_split(percentage, seed=None)

Paramètres

Nom Description
percentage
Obligatoire

Pourcentage approximatif à fractionner le 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

Ignorez les enregistrements du haut du jeu de données par 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 représentant un jeu de données avec des enregistrements ignorés.

submit_profile_run

Remarque

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

Envoyez une exécution d’expérimentation 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écifiez « local » pour utiliser le calcul local. Consultez https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.computetarget pour plus d’informations sur les cibles de calcul.

experiment
Obligatoire

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

cache_datastore_name
Obligatoire
str

nom du magasin de données pour stocker le cache de profil, si Aucun, le magasin de données par défaut sera utilisé

Retours

Type Description

Objet de type DatasetProfileRun, classe.

take

Prenez un exemple d’enregistrements en haut du jeu de données par 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

Prenez un échantillon aléatoire d’enregistrements dans le jeu de données approximativement par la probabilité spécifiée.

take_sample(probability, seed=None)

Paramètres

Nom Description
probability
Obligatoire

Probabilité d’inclusion d’un enregistrement dans l’exemple.

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

Filtrez 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 des données.

include_boundary
Obligatoire

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

validate
Obligatoire

Indique s’il faut valider si des 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

Filtrez TabularDataset avec des colonnes d’horodatage avant une 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 des données.

include_boundary
Obligatoire

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

validate
Obligatoire

Indique s’il faut valider si des 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

Filtrez TabularDataset entre une heure de début et de fin spécifiée.

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

Paramètres

Nom Description
start_time
Obligatoire

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

end_time
Obligatoire

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

include_boundary
Obligatoire

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

validate
Obligatoire

Indique s’il faut valider si des 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

Filtrez TabularDataset pour contenir uniquement la durée spécifiée (quantité) de données récentes.

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

Paramètres

Nom Description
time_delta
Obligatoire

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

include_boundary
Obligatoire

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

validate
Obligatoire

Indique s’il faut valider si des 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

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

Le jeu de données résultant contient un ou plusieurs fichiers CSV, chacun correspondant à une partition de données à partir 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 résultant.

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

Remarque

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

Retourne un DataFrame Dask qui peut lire les données de manière différée 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ée facultative spécifiant les colonnes attendues et leurs dtypes. sample_size est ignoré si cela est fourni.

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înent une exception.

out_of_range_datetime
Obligatoire

Guide pratique pour gérer les valeurs de date/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înent une exception.

Retours

Type Description

dask.dataframe.core.DataFrame

to_pandas_dataframe

Chargez 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înent une exception.

out_of_range_datetime
Obligatoire

Guide pratique pour gérer les valeurs de date/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înent une exception.

Retours

Type Description

Retourne un DataFrame pandas.

to_parquet_files

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

Le jeu de données résultant contient un ou plusieurs fichiers Parquet, chacun correspondant à une partition de données à partir 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

Chargez 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éfinissez des colonnes d’horodatage 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’horodatage (utilisé pour être appelé fine_grain_timestamp) (facultatif). La valeur par défaut est None(clear).

partition_timestamp
Obligatoire
str

Nom de la colonne partition_timestamp (utilisé pour être appelé horodatage de grain grossière) (facultatif). La valeur par défaut est None(clear).

validate
Obligatoire

Indique s’il faut valider si des 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 nouvel objet TabularDataset avec des colonnes timestamp définies.

Remarques

La méthode définit les colonnes à utiliser comme horodatages. Les colonnes d’horodatage sur 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. Lorsqu’un jeu de données a à la fois timestamp (used to be referred as fine_grain_timestamp) et partition_timestamp (used to be referred as coarse grain timestamp) spécifié, les deux colonnes doivent représenter la même chronologie.

Attributs

timestamp_columns

Retourne les colonnes d’horodatage.

Retours

Type Description
(str, str)

Noms de colonnes pour l’horodatage (utilisé pour être appelé fine_grain_timestamp) et partition_timestamp (utilisé pour être appelé horodatage de grain grossière) définis pour le jeu de données.