- un environnement virtuel
- un service ClickHouse Cloud opérationnel et vos informations de connexion
- Vous connecter à ClickHouse Cloud depuis des notebooks Jupyter avec chDB
- Interroger des jeux de données distants et convertir les résultats en Pandas DataFrames
- Combiner des données de ClickHouse Cloud avec des fichiers CSV locaux pour l’analyse
- Visualiser les données à l’aide de matplotlib
Configuration
Data sources. Cliquez ensuite sur Predefined sample data :
Sélectionnez Get started sur la carte des données de prix de l’immobilier au Royaume-Uni (4GB) :
Cliquez ensuite sur Import dataset :
ClickHouse créera automatiquement la table pp_complete dans la base de données default et la remplira avec 28,92 millions de lignes de données sur les prix.
Afin de réduire le risque d’exposer vos identifiants, nous vous recommandons d’ajouter votre nom d’utilisateur Cloud et votre mot de passe comme variables d’environnement sur votre machine locale.
Depuis un terminal, exécutez la commande suivante pour ajouter votre nom d’utilisateur et votre mot de passe comme variables d’environnement :
Les variables d’environnement ci-dessus ne persistent que pendant la durée de votre session de terminal.
Pour les définir de manière permanente, ajoutez-les à votre fichier de configuration du shell.
localhost:8888.
Cliquez sur File > New > Notebook pour créer un nouveau notebook.
Vous serez invité à sélectionner un noyau.
Sélectionnez n’importe quel noyau Python disponible ; dans cet exemple, nous choisirons ipykernel :
Dans une cellule vide, vous pouvez saisir la commande suivante pour installer chDB, que nous utiliserons pour nous connecter à notre instance ClickHouse Cloud distante :
Explorer les données
remoteSecure de ClickHouse vous permet de récupérer facilement les données depuis ClickHouse Cloud.
Vous pouvez demander à chDB de renvoyer ces données sous forme de DataFrame Pandas dans le processus, ce qui offre une manière pratique et familière de travailler avec les données.
Écrivez la requête suivante pour récupérer les données UK price paid depuis votre service ClickHouse Cloud et les convertir en pandas.DataFrame :
chdb.query(query, "DataFrame") exécute la requête spécifiée et affiche le résultat dans le terminal sous forme de DataFrame Pandas.
Dans la requête, nous utilisons la fonction remoteSecure pour nous connecter à ClickHouse Cloud.
La fonction remoteSecure prend les paramètres suivants :
- une chaîne de connexion
- le nom de la base de données et de la table à utiliser
- votre nom d’utilisateur
- votre mot de passe
remoteSecure se connecte au service ClickHouse Cloud distant, exécute la requête et renvoie le résultat.
Selon le volume de vos données, cela peut prendre quelques secondes.
Dans cet exemple, nous renvoyons un prix moyen par année et appliquons le filtre town='LONDON'.
Le résultat est ensuite stocké sous forme de DataFrame dans une variable appelée df.
df.head affiche uniquement les premières lignes des données renvoyées :
Exécutez la commande suivante dans une nouvelle cellule pour vérifier les types des colonnes :
date soit de type Date dans ClickHouse, dans le DataFrame obtenu, il est de type uint16.
chDB déduit automatiquement le type le plus approprié lorsqu’il renvoie le DataFrame.
Maintenant que les données sont disponibles dans un format familier, voyons comment les prix de l’immobilier à Londres ont évolué au fil du temps.
Dans une nouvelle cellule, exécutez la commande suivante pour créer, avec matplotlib, un graphique simple du prix en fonction du temps pour Londres :
file pour lire directement des fichiers sur votre machine locale.
Dans une nouvelle cellule, exécutez la commande suivante pour créer un nouveau DataFrame à partir du fichier .csv local.
Lire depuis plusieurs sources en une seule étape
Lire depuis plusieurs sources en une seule étape
Il est également possible de lire depuis plusieurs sources en une seule étape. Pour ce faire, vous pouvez utiliser la requête ci-dessous avec une
JOIN :Résumé
remoteSecure(), lire des fichiers CSV locaux avec le moteur de table file(), et convertir directement les résultats en Pandas DataFrames pour l’analyse et la visualisation.
Grâce à chDB, les data scientists peuvent tirer parti des puissantes capacités SQL de ClickHouse avec des outils Python courants comme Pandas et matplotlib, ce qui facilite la combinaison de plusieurs sources de données pour une analyse approfondie.
Même si bien des data scientists londoniens ne pourront sans doute pas s’offrir leur propre maison ou appartement de sitôt, ils peuvent au moins analyser le marché qui les en a exclus !