Cara Mengonversi Pandas SQL ke DataFrame – Codewithaden

Jika Anda tidak tahu cara menghubungkan Python dengan mySQL, lihat cara menghubungkan python dengan mysql memandu. Dalam tutorial itu, saya telah menjelaskan secara singkat modul mana yang perlu Anda gunakan di Python3 untuk menghubungkan server MySQL dan mengambil data dari database.

Pandas SQL ke DataFrame

Ke mengubah SQL ke DataFrame di Panda , menggunakan pd.read_sql_query () fungsi. PANDAS read_sql_query () adalah fungsi perpustakaan bawaan yang membaca kueri SQL ke dalam DataFrame. Itu read_sql_query () Fungsi Mengembalikan DataFrame yang sesuai dengan set hasil dari string kueri. Secara opsional menyediakan index_col parameter untuk menggunakan salah satu kolom sebagai indeks; Jika tidak, indeks integer default akan digunakan.

Langkah -langkah untuk Mengonversi SQL ke DataFrame di Pandas

  1. Buat Database dan Tabel MySQL.
  2. Impor panda dan Pymysql kemasan.
  3. Hubungkan Python ke MySQL dengan pymysql.connect () fungsi.
  4. Baca kueri SQL.
  5. Konversi nilai variabel itu menjadi DataFrame menggunakan fungsi PD.DataFrame ().

Langkah 1: Buat Database dan Tabel MySQL

Ada banyak cara untuk melakukan itu, tetapi kami akan segera pergi.

Saya menggunakan server MAMP, jadi phpMyadmin ada di sana.

Sekarang, secara default, ada satu pengguna yang sudah dibuat dipanggil akar.

Jadi, nama pengguna dan kata sandi untuk pengguna ini akar dan akar.

Sekarang, saya sudah membuat database yang disebut Laravel7crud.

Saya telah membuat tabel yang disebut Coronas dan memasukkan dua baris.

Tabel terakhir saya adalah sebagai berikut.

Create

Sekarang, kami akan membaca kueri pilih, yang mengambil semua dua baris, dan kami akan mengonversi data SQL ini menjadi DataFrame

Langkah 2: Impor panda dan pymysql

Kami menggunakan paket pymysql untuk menghubungkan python dengan database MySQL. Jadi, Anda harus menginstal paket. Jika Anda belum menginstal paket, lihat ini tautan instalasi

Anda juga perlu menginstal paket panda. Jadi, jika Anda belum menginstalnya, maka ketik perintah berikut.

python3 -m pip install pandas 

Versi default saya adalah Python 3.8 . Jadi, dalam perintah di atas, saya menggunakan Python3.

python --version
Python 3.8.2 

Sekarang, buat file pemrograman Python yang dipanggil app.py dan impor paket.

# app.py

import pymysql
import pandas as pd 

Langkah 3: Hubungkan Python ke MySQL dengan Connect ()

Pymysql adalah pustaka klien Mysql murni-python berdasarkan PEP 249. Sebagian besar API publik kompatibel dengan MySQLClient dan MySQLDB. Pymysql bekerja dengan MySQL 5.5+ dan MariaDB 5.5+.

Itu pymysql.connect () Fungsi mengambil empat parameter berikut.

  1. Nama host
  2. Nama belakang
  3. Kata sandi
  4. Database

Lihat kode berikut.

# app.py

import pymysql
import pandas as pd

dbcon = pymysql.connect("localhost", "root", "root", "laravel7crud") 

Langkah 4: Baca kueri SQL

Itu pd.read_sql_query () Fungsi mengambil objek kueri dan koneksi SQL dalam parameter. Dalam kasus kami, itu adalah a Pernyataan SQL Select dan objek DBCON.

# app.py

import pymysql
import pandas as pd

dbcon = pymysql.connect("localhost", "root", "root", "laravel7crud")

try:
    SQL_Query = pd.read_sql_query(
        '''select
          symptoms,
          country_name,
          cases
          from coronas''', dbcon)
 

Langkah 5: Konversi variabel menjadi DataFrame menggunakan PD.DataFrame ()

Pandas DataFrame adalah data tabular dua dimensi, ukuran-mutable, berpotensi heterogen. Struktur data juga berisi sumbu berlabel (baris dan kolom). Operasi aritmatika selaras pada label baris dan kolom. Itu bisa dianggap sebagai kamus , wadah untuk a Seri objek.

Mari kita ubah variabel SQL_QUERY menjadi DataFrame menggunakan kode berikut.

# app.py

df = pd.DataFrame(SQL_Query, columns=['symptoms', 'country_name', 'cases'])
    print(df)
    print(type(df)) 

DataFrame mengambil dua parameter.

  1. Data kueri SQL
  2. Kolom: Kami telah menamai sama dengan nama kolom tabel SQL.

Kemudian kami mencetak DataFrame dan tipe datanya.

Jadi, kode terakhir kami terlihat seperti di bawah ini.

# app.py

import pymysql
import pandas as pd

dbcon = pymysql.connect("localhost", "root", "root", "laravel7crud")

try:
    SQL_Query = pd.read_sql_query(
        '''select
          symptoms,
          country_name,
          cases
          from coronas''', dbcon)

    df = pd.DataFrame(SQL_Query, columns=['symptoms', 'country_name', 'cases'])
    print(df)
    print('The data type of df is: ', type(df))
except:
    print("Error: unable to convert the data")

dbcon.close() 

Keluaran

python3 app.py
  symptoms country_name    cases
0    Fever        India    29000
1    Cough          USA  3000000
The data type of df is:   

Dari output, Anda dapat melihat bahwa kami telah berhasil mengonversi SQL ke DataFrame PANDAS.

Itu untuk tutorial ini.

Lihat juga

Pandas DataFrame ke CSV

Pandas DataFrame ke JSON

Pandas DataFrame untuk Daftar

Pandas Json ke CSV

Daftar Python ke DataFrame

Artikel ini berasal dari website Winpoin, dan kemudian diterjemahkan ke bahasa indonesia, baca artikel asli disini

Leave a Reply

Your email address will not be published. Required fields are marked *