Manipuler des données avec BigQuery DataFrames
BigQuery DataFrames vous permet de manipuler des données à l'aide de modèles de syntaxe pandas familiers sans transférer d'ensembles de données hors de votre entrepôt de données. Comme ces opérations sont exécutées côté serveur, vous pouvez inspecter, manipuler et appliquer des calculs complexes directement sur les données stockées dans BigQuery.
Pour en savoir plus sur les fonctions compatibles, consultez la bibliothèque bigframes.bigquery.
Rôles requis
Pour obtenir les autorisations nécessaires pour effectuer les tâches décrites dans ce document, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :
- Utilisateur de job BigQuery (
roles/bigquery.jobUser) - Utilisateur de sessions de lecture BigQuery (
roles/bigquery.readSessionUser) -
Utilisez BigQuery DataFrames dans un notebook BigQuery :
- Utilisateur BigQuery (
roles/bigquery.user) - Utilisateur de l'environnement d'exécution de notebook (
roles/aiplatform.notebookRuntimeUser) - Créateur de code (
roles/dataform.codeCreator)
- Utilisateur BigQuery (
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Lorsque vous effectuez l'authentification d'un utilisateur final dans un environnement interactif tel qu'un notebook, un REPL Python ou la ligne de commande, BigQuery DataFrames vous invite à procéder à une authentification si nécessaire. Sinon, découvrez comment configurer les identifiants par défaut de l'application pour différents environnements.
API pandas
Une fonctionnalité notable de BigQuery DataFrames est que l'API bigframes.pandas est conçue pour être semblable aux API de la bibliothèque pandas. Cette conception vous permet d'utiliser des modèles de syntaxe familiers pour les tâches de manipulation de données. Les opérations définies via l'API BigQuery DataFrames sont exécutées côté serveur, directement sur les données stockées dans BigQuery, ce qui évite d'avoir à transférer les ensembles de données hors de BigQuery.
Pour vérifier quelles API pandas sont compatibles avec BigQuery DataFrames, consultez API pandas compatibles.
Inspecter et manipuler des données
Vous pouvez utiliser l'API bigframes.pandas pour effectuer des opérations d'inspection et de calcul des données. L'exemple de code suivant utilise la bibliothèque bigframes.pandas pour inspecter la colonne body_mass_g, calculer la moyenne body_mass et calculer la moyenne body_mass par species :
Bibliothèque BigQuery
La bibliothèque BigQuery fournit des fonctions SQL BigQuery qui n'ont peut-être pas d'équivalent pandas. Les sections suivantes présentent quelques exemples.
Traiter les valeurs d'un tableau
Vous pouvez utiliser la fonction bigframes.bigquery.array_agg() de la bibliothèque bigframes.bigquery pour agréger des valeurs après une opération groupby :
Vous pouvez également utiliser les fonctions de tableau array_length() et array_to_string().
Créer un objet de structure Series
Vous pouvez utiliser la fonction bigframes.bigquery.struct() de la bibliothèque bigframes.bigquery pour créer un objet Series de structure avec des sous-champs pour chaque colonne d'un DataFrame :
Convertir des codes temporels en epochs Unix
Vous pouvez utiliser la fonction bigframes.bigquery.unix_micros() de la bibliothèque bigframes.bigquery pour convertir les codes temporels en microsecondes Unix :
Vous pouvez également utiliser les fonctions temporelles unix_seconds() et unix_millis().
Utiliser la fonction scalaire SQL
Vous pouvez utiliser la fonction bigframes.bigquery.sql_scalar() de la bibliothèque bigframes.bigquery pour accéder à une syntaxe SQL arbitraire représentant une expression à une seule colonne :
Étapes suivantes
- Découvrez les fonctions Python personnalisées pour BigQuery DataFrames.
- Découvrez comment générer du code BigQuery DataFrames avec Gemini.
- Découvrez comment analyser les téléchargements de packages depuis PyPI avec BigQuery DataFrames.
- Consultez le code source, les exemples de notebooks et les exemples de BigQuery DataFrames sur GitHub.
- Explorez la documentation de référence de l'API BigQuery DataFrames.