Menukar Keputusan Pertanyaan SQL kepada Struktur Data Pandas
Pengenalan
Untuk memudahkan analisis data dan manipulasi, selalunya perlu untuk menukar data yang diambil daripada pangkalan data SQL kepada struktur data Pandas. Artikel ini akan membimbing anda melalui proses untuk mencapai ini.
Mengenal pasti Jenis Pemulangan
Fungsi connection.execute() dalam kod yang disediakan mengembalikan SQLAlchemy ResultProxy. Objek ini mewakili hasil pertanyaan sebagai tuple yang boleh diulang, di mana setiap tuple sepadan dengan baris dalam hasil.
Menukar kepada Struktur Data Pandas
Untuk menukar hasilnya tuple ke dalam Pandas DataFrame, anda boleh menggunakan DataFrame pembina:
import pandas as pd df = pd.DataFrame(resoverall.fetchall())
Kaedah fetchall() mengembalikan senarai tupel yang mewakili hasil pertanyaan. Pembina DataFrame mengambil senarai ini sebagai hujah dan menjana DataFrame dengan tupel sebagai baris.
Menetapkan Nama Lajur
Secara lalai, DataFrame akan menggunakan nama lajur generik seperti "0", "1", dll. Untuk menetapkan nama lajur yang bermakna, gunakan lajur atribut:
df.columns = resoverall.keys()
Resoverall.keys() mengembalikan senarai nama lajur daripada hasil pertanyaan. Menetapkan senarai ini kepada atribut DataFrame.columns menetapkan nama lajur.
Alternatif dengan Penukaran Jenis
Untuk menghuraikan dan menukar jenis lajur supaya sepadan dengan skema SQL, anda boleh menggunakan pendekatan berikut:
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]])
Kaedah ini memastikan bahawa jenis lajur DataFrame adalah konsisten dengan skema SQL.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Keputusan Pertanyaan SQL kepada Pandas DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!