Foto dari situs Unsplash . Penulis: Hitesh Choudhary
Mendapatkan hasil yang sama di Python dengan kueri SQL
Seringkali, ketika mengerjakan proyek yang sama, kita harus beralih antara SQL dan Python. Karena itu, beberapa dari kita terbiasa dengan manipulasi data dalam kueri SQL, tetapi tidak dengan Python, yang menghalangi efisiensi dan produktivitas kita. Faktanya, dengan menggunakan Pandas, Anda dapat memperoleh hasil yang sama dengan Python seperti pada kueri SQL.
Awal pekerjaan
Paket Pandas perlu diinstal jika tidak ada.
conda install pandas
Kami akan menggunakan Set Data Titanic yang terkenal dari Kaggle .
Setelah menginstal paket dan mengunduh data, kita perlu mengimpornya ke lingkungan Python kita.
Kami akan menggunakan DataFrame untuk menyimpan data. Berbagai fungsi Pandas akan membantu kami mengelola struktur data ini.
PILIH, BEDA, JUMLAH, BATAS
Mari kita mulai dengan kueri SQL sederhana yang sering kita gunakan.
titanic_df["age"].unique()akan mengembalikan larik nilai unik, jadi kita harus menggunakan len()untuk menghitung jumlahnya.
SELECT, WHERE, OR, AND, IN (PILIH dengan kondisi)
Setelah bagian pertama, Anda mempelajari cara menjelajahi DataFrame dengan cara yang sederhana. Sekarang mari kita coba melakukannya dengan beberapa kondisi (ini adalah pernyataan
WHEREdalam SQL).
Jika kita hanya ingin memilih kolom tertentu dari DataFrame, kita dapat melakukannya dengan sepasang tanda kurung siku tambahan.
Catatan: jika Anda memilih beberapa kolom, Anda harus meletakkan larik
["name","age"]di dalam tanda kurung siku.
isin()bekerja persis sama seperti INdi kueri SQL. Untuk menggunakannya NOT IN, dengan Python kita perlu menggunakan negasi (~).
GROUP BY, ORDER BY, COUNT
GROUP BYdan ORDER BYjuga pernyataan SQL populer untuk data mining. Sekarang mari kita coba menggunakannya dengan Python.
Jika kita ingin mengurutkan hanya satu kolom JUMLAH, kita cukup meneruskan nilai boolean ke metode
sort_values. Jika kita akan mengurutkan beberapa kolom, maka kita harus mengirimkan array boolean ke metode tersebut sort_values.
Metode ini
sum()akan mengembalikan jumlah untuk setiap kolom di DataFrame, yang bisa digabungkan secara numerik. Jika kita hanya menginginkan kolom tertentu, maka kita perlu menentukan nama kolom menggunakan tanda kurung siku.
MIN, MAX, MEAN, MEDIAN
Terakhir, mari kita coba beberapa fungsi statistik standar yang penting saat menjelajahi data.
SQL tidak berisi operator yang mengembalikan nilai median, jadi kami menggunakan BigQuery untuk mendapatkan nilai median kolom usia. Di
APPROX_QUANTILES
Pandas, metode agregasi
.agg()juga mendukung fungsi lain, misalnya sum.
Anda sekarang telah mempelajari cara menulis ulang kueri SQL dengan Python menggunakan Pandas . Semoga artikel ini bermanfaat bagi Anda.
Semua kode dapat ditemukan di repositori Github saya .
Terima kasih atas perhatian Anda!