Heim > Datenbank > MySQL-Tutorial > Wie konvertiere ich SQL-Abfrageergebnisse in einen Pandas DataFrame?

Wie konvertiere ich SQL-Abfrageergebnisse in einen Pandas DataFrame?

Barbara Streisand
Freigeben: 2024-12-04 20:15:13
Original
488 Leute haben es durchsucht

How to Convert SQL Query Results to a Pandas DataFrame?

Konvertieren von SQL-Abfrageergebnissen in die Pandas-Datenstruktur

Einführung

Zur Erleichterung der Datenanalyse und Manipulation ist es oft notwendig, aus einer SQL-Datenbank abgerufene Daten in eine Pandas-Datenstruktur zu konvertieren. Dieser Artikel führt Sie durch den Prozess, dies zu erreichen.

Identifizieren des Rückgabetyps

Die Funktion „connection.execute()“ im bereitgestellten Code gibt einen SQLAlchemy ResultProxy zurück. Dieses Objekt stellt das Ergebnis der Abfrage als Iterable von Tupeln dar, wobei jedes Tupel einer Zeile im Ergebnis entspricht.

Konvertieren in die Pandas-Datenstruktur

Zur Konvertierung Um die Ergebnistupel in einen Pandas DataFrame zu übertragen, können Sie den DataFrame-Konstruktor verwenden:

import pandas as pd

df = pd.DataFrame(resoverall.fetchall())
Nach dem Login kopieren

Die fetchall()-Methode gibt a zurück Liste von Tupeln, die die Abfrageergebnisse darstellen. Der DataFrame-Konstruktor verwendet diese Liste als Argument und generiert einen DataFrame mit den Tupeln als Zeilen.

Spaltennamen festlegen

Standardmäßig verwendet der DataFrame generische Spaltennamen wie „0“, „1“ usw. Um aussagekräftige Spaltennamen zuzuweisen, verwenden Sie das Spaltenattribut:

df.columns = resoverall.keys()
Nach dem Login kopieren

The resoverall.keys() gibt eine Liste von Spaltennamen aus dem Abfrageergebnis zurück. Durch Zuweisen dieser Liste zum DataFrame.columns-Attribut werden die Spaltennamen festgelegt.

Alternative mit Typkonvertierung

Um die Spaltentypen zusätzlich zu analysieren und zu konvertieren, damit sie dem SQL-Schema entsprechen, Sie können den folgenden Ansatz verwenden:

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]])
Nach dem Login kopieren

Diese Methode stellt sicher, dass die DataFrame-Spaltentypen mit der SQL konsistent sind Schema.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich SQL-Abfrageergebnisse in einen Pandas DataFrame?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage