Maison > base de données > tutoriel mysql > Comment convertir les résultats d'une requête SQL en un DataFrame Pandas ?

Comment convertir les résultats d'une requête SQL en un DataFrame Pandas ?

Barbara Streisand
Libérer: 2024-12-04 20:15:13
original
487 Les gens l'ont consulté

How to Convert SQL Query Results to a Pandas DataFrame?

Conversion des résultats de requête SQL en structure de données Pandas

Introduction

Pour faciliter l'analyse des données et manipulation, il est souvent nécessaire de convertir les données récupérées d’une base de données SQL en une structure de données Pandas. Cet article vous guidera tout au long du processus pour y parvenir.

Identification du type de retour

La fonction connection.execute() dans le code fourni renvoie un ResultProxy SQLAlchemy. Cet objet représente le résultat de la requête sous la forme d'un itérable de tuples, où chaque tuple correspond à une ligne dans le résultat.

Conversion en structure de données Pandas

Pour convertir le résultat est placé dans un Pandas DataFrame, vous pouvez utiliser le constructeur DataFrame :

import pandas as pd

df = pd.DataFrame(resoverall.fetchall())
Copier après la connexion

Le fetchall() La méthode renvoie une liste de tuples représentant les résultats de la requête. Le constructeur DataFrame prend cette liste comme argument et génère un DataFrame avec les tuples sous forme de lignes.

Définition des noms de colonnes

Par défaut, le DataFrame utilisera des noms de colonnes génériques comme "0", "1", etc. Pour attribuer des noms de colonnes significatifs, utilisez l'attribut columns :

df.columns = resoverall.keys()
Copier après la connexion

Le resoverall.keys() renvoie une liste de noms de colonnes à partir du résultat de la requête. L'attribution de cette liste à l'attribut DataFrame.columns définit les noms de colonnes.

Alternative avec conversion de type

Pour analyser et convertir en outre les types de colonnes pour qu'ils correspondent au schéma SQL, vous pouvez utiliser l'approche suivante :

import numpy as np
from sqlalchemy import types

df = pd.DataFrame(resoverall.fetchall())
for column in resoverall.keys():
    df[column] = df[column].astype(types.type_map[resoverall.scalar_types[column]])
Copier après la connexion

Cette méthode garantit que les types de colonnes DataFrame sont cohérents avec le SQL schéma.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal