Kombinasi Python MySQL Pandas Untuk Analisis Data

8 March 2023 | Tags: , ,


Python merupakan bahasa pemrograman populer yang banyak digunakan untuk analisis data, data science, pengembangan web, dan aplikasi desktop bahkan aplikasi mobile. MySQL adalah sistem manajemen basis data relasional yang biasanya digunakan untuk menyimpan dan mengelola data dalam jumlah besar. Pandas adalah library Python yang digunakan untuk manipulasi dan analisis data. Dalam tutorial ini, kita akan membahas kombinasi Python MySQL Pandas untuk analisis data sederhana.

Untuk tutorial ini, kami mengasumsikan anda sudah menginstall Python dan MySQL Database. Jika belum ada silahkan unduh dan install kedua aplikasi tersebut.

Install Library yang Diperlukan

Untuk kolaborasi dengan MySQL dan Pandas di Python, kita perlu menginstal library mysql-connector-python dan pandas. Anda dapat menginstalnya menggunakan pip dengan perintah berikut:

pip install mysql-connector-python
pip install pandas

Persiapan Data Untuk Latihan

Untuk lebih mudah dalam praktik tutorial ini, kita buat tabel dengan nama tbl_pelanggan untuk studi kasusnya dan tambahkan beberapa record. Adapun struktur tabel-nya sebagai berikut:

CREATE TABLE tbl_pelanggan( `id` INT(10) NOT NULL AUTO_INCREMENT, 
`nama` VARCHAR(255), 
`asal` VARCHAR(255), 
`total_belanja` BIGINT(20), 
PRIMARY KEY (`id`) ); 

Sementara record-nya bisa anda gunakan perintah sql ini:

insert  into `tbl_pelanggan`(`id`,`nama`,`asal`,`total_belanja`) values (1,'Gede Antara','DENPASAR',25000000),
(2,'Yuda Mardian','BULELENG',17000000),
(3,'Ketut Mariani','TABANAN',32000000),
(4,'Wayan Jutawan','TABANAN',5000000),
(5,'Kadek Adnyana','BADUNG',12000000),
(6,'Budi Hartono','BADUNG',8500000),
(7,'Made Jaya','KARANGASEM',4500000),
(8,'Luh Selvi','TABANAN',7750000),
(9,'Ayu Tina','KLUNGKUNG',6750000),
(10,'Kadek Safitri','BANGLI',23000000),
(11,'Kadek Linda','BANGLI',15000000),
(12,'Helena','KLUNGKUNG',18000000),
(13,'Nadia','BULELENG',13500000),
(14,'Komang Febri','DENPASAR',6600000),
(15,'Luh Susanti','KARANGASEM',8900000),
(16,'Made Ardana','KARANGASEM',17500000),
(17,'Kadek Lestari','JEMBRANA',18000000),
(18,'Anggi Pratiwi','JEMBRANA',15000000),
(19,'Ria Astuti','JEMBRANA',11200000),
(20,'Kadek Antari','TABANAN',9800000),
(21,'Budayani','DENPASAR',5600000),
(22,'Lia Putri','DENPASAR',31500000),
(23,'Faradia','BULELENG',3500000);

Pembuatan Kode Program

Untuk pembuatan kode kita akan menggunakan Jupyter Notebook. Dengan Jupyter Notebook kita bisa mengintegrasikan antara kode dengan output di dalam satu dokumen secara interaktif. Jika anda pengguna editor Visual Code, ekstensi Jupyter juga tersedia.

Import Library

Pertama-tama kita import library yang diperlukan untuk latihan kali ini yaitu: mysql-connector-python dan pandas.

import mysql.connector
import pandas as pd

Koneksi ke MySQL

Setelah Library dan Data persiapan sudah tersedia, berikutnya dibuatkan koneksi ke MySQL.

myDB = mysql.connector.connect(
  host ="localhost", 
  user ="root",
  passwd ="",
  database = "dbusaha"
)

Untuk isian paramater user, passwd dan database silahkan disesuaikan dengan nilai yang anda miliki.

Import Data ke Dataframe

Selanjutnya, kita dapat mengimpor data dari MySQL ke dalam dataframe. Data dari tabel pelanggan sebelumnya akan kita simpan dalam dataframe. Adapun perintahnya sangat sederhana:

df = pd.read_sql("SELECT * FROM tbl_pelanggan", con=myDB)

Perintah di atas menggunakan fungsi read_sql() dari Pandas untuk mengimpor data dari tbl_pelanggan ke dalam dataframe. Data yang dihasilkan disimpan variabel df. Untuk melihat hasilnya anda bisa mengetikan perintah df dan run. Maka di akan muncul tampilan berikut.

Kombinasi Pyhton MySQL Pandas Untuk Analisis Data

Manipulasi Data dengan Pandas

Selanjutnya, kita dapat memanipulasi data menggunakan berbagai fungsi Pandas.

Misalnya kita ingin menampilkan data pelanggan yang berasal dari TABANAN.

df[df["asal"]=="TABANAN"]
Manipulasi data pandas untuk menampilkan yang berasal dari daerah terentu.

Manipulasi data untuk mengetahui jumlah pelanggan berdasarkan asal.

df.groupby('asal').size()
Manipulasi data untuk mengelompokan pelanggan berdasarkan asal.

Dan masih banyak fungsi Pandas yang bisa anda gunakan untuk melakukan analisis data.

Kesimpulan

Menggunakan Python, MySQL, dan Pandas secara bersamaan dapat menjadi kombinasi yang bagus untuk mengelola data. Dengan mengikuti langkah-langkah dalam tutorial ini, Anda dapat dengan mudah terhubung ke database MySQL, mengimpor data ke dalam dataframe Pandas, memanipulasi data menggunakan Pandas, dan melakukan berbagai tugas analisis data. Dengan pengetahuan ini, Anda dapat mulai mengembangkan dan menganalisis data dalam jumlah besar menggunakan dengan tools yang sama atau yang serupa.

Komentar via Facebook tentang Kombinasi Python MySQL Pandas Untuk Analisis Data

Komentar tentang Kombinasi Python MySQL Pandas Untuk Analisis Data

Silahkan tulis saran, komentar dan pertanyaan dibawah!

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