Python merupakan salah satu bahasa pemrograman yang sangat populer, terutama untuk keperluan science dan data science. Python mempunyai banyak library dan tools yang bisa dimanfaatkan untuk melakukan berbagai macam analisa data, seperti membaca, mengolah, dan memvisualisasikan data. Dalam artikel ini, kita akan membahas cara membaca file excel (xlsx) dengan Python.
Step 1: Instal library Pandas
Langkah pertama yang harus dilakukan adalah menginstal library Pandas pada Python. Pandas adalah library yang sangat populer untuk keperluan data science, dan salah satu fungsinya adalah membaca data dari file excel. Pandas bisa diinstal dengan menggunakan pip, yaitu package manager yang sudah terintegrasi di dalam Python. Untuk menginstal Pandas, jalankan perintah berikut di command prompt:
pip install pandas
Setelah Pandas terinstal, kita bisa mulai membaca file excel dengan Python.
Step 2: Load data dari file excel
Setelah Pandas terinstal, langkah selanjutnya adalah memuat data dari file excel ke dalam Python. Pandas menyediakan fungsi read_excel()
untuk membaca file excel. Fungsi ini memiliki beberapa parameter, seperti nama file yang akan dibaca, sheet yang akan dibaca, dan sebagainya. Berikut adalah contoh kode untuk membaca file excel dengan nama “data.xlsx”:
# Import library Pandas
import pandas as pd
# Load data dari file excel
df = pd.read_excel('data.xlsx')
Dalam kode di atas, library Pandas di-import dan digunakan untuk membaca file excel dengan nama “data.xlsx”. Hasil load data akan disimpan ke dalam variabel DataFrame yang dinamakan “df”. DataFrame adalah struktur data Pandas yang sangat berguna untuk analisa data. Kita akan membahas lebih lengkap tentang DataFrame di bagian selanjutnya.
Step 3: Memahami Struktur Data Pandas DataFrame
Setelah berhasil memuat data dari file excel, langkah selanjutnya adalah memahami struktur data Pandas DataFrame. DataFrame adalah salah satu struktur data di Pandas yang sangat berguna untuk analisa data. DataFrame mirip seperti tabel dalam database, namun lebih fleksibel dan powerful dalam pengolahannya.
DataFrame mempunyai 2 dimensi, yaitu baris dan kolom. Baris biasanya merepresentasikan entitas atau obyek dalam data, seperti karyawan atau pelanggan. Sedangkan kolom merepresentasikan atribut atau fitur dari entitas tersebut, seperti nama, usia, atau alamat.
Dalam Pandas, DataFrame bisa diakses dengan menggunakan indeks/label. Indeks baris bisa didefinisikan sendiri atau di-generate secara otomatis oleh Pandas. Kolom bisa diakses dengan menggunakan nama kolom.
Berikut adalah contoh pandas DataFrame yang dibuat secara manual:
# Import library Pandas
import pandas as pd
# Membuat DataFrame
df = pd.DataFrame(
'nama': ['Andi', 'Budi', 'Caca'],
'usia': [30, 25, 40],
'alamat': ['Jakarta', 'Bandung', 'Surabaya']
)
# Cetak DataFrame
print(df)
Dalam contoh di atas, kita membuat DataFrame dengan menggunakan dictionary. Tiap-tiap key dalam dictionary merepresentasikan nama kolom, sedangkan value-nya merepresentasikan data di tiap baris.
Setelah DataFrame terbentuk, kita bisa melakukan berbagai macam operasi pengolahan data yang sangat powerful, seperti slicing, filtering, grouping, dan sebagainya.
Step 4: Memahami dan Membaca Sheet dalam Excel
Sebelumnya, kita hanya membaca file excel secara keseluruhan dan memperoleh DataFrame. Namun sebenarnya, bisa jadi dalam satu file excel terdapat beberapa sheet yang berbeda, dan kita ingin membaca sheet tertentu saja. Kita bisa melakukan ini dengan menggunakan parameter sheet_name
pada fungsi read_excel()
.
Contohnya, kita punya file excel bernama “data.xlsx” dengan 2 sheet, yaitu “sheet1” dan “sheet2”. Berikut adalah contoh untuk membaca sheet “sheet1” saja.
# Import library Pandas
import pandas as pd
# Load data dari sheet "sheet1" dalam file excel
df = pd.read_excel('data.xlsx', sheet_name='sheet1')
Di contoh di atas, kita memberikan parameter sheet_name='sheet1'
pada fungsi read_excel()
untuk membaca sheet “sheet1” saja.
Step 5: Menampilkan data dari DataFrame
Sekarang kita sudah berhasil membaca file excel dan memuat datanya ke dalam DataFrame. Namun sebelum kita melakukan analisa, tentu kita perlu memastikan bahwa data sudah terbaca dengan benar dan sesuai dengan ekspektasi kita. Kita bisa menampilkan data dari dataframe dengan beberapa cara.
1. Head dan Tail: menampilkan 5 baris awal atau akhir dari dataframe
# Import library Pandas
import pandas as pd
# Load data dari file excel
df = pd.read_excel('data.xlsx')
# Menampilkan 5 baris awal dari dataframe
print(df.head())
# Menampilkan 5 baris akhir dari dataframe
print(df.tail())
2. Sample: menampilkan baris secara acak
# Import library Pandas
import pandas as pd
# Load data dari file excel
df = pd.read_excel('data.xlsx')
# Menampilkan 3 baris secara acak dari dataframe
print(df.sample(n=3))
3. Describe: menghitung statistik ringkasan dari kolom numerik
# Import library Pandas
import pandas as pd
# Load data dari file excel
df = pd.read_excel('data.xlsx')
# Menampilkan statistik ringkasan dari kolom numerik
print(df.describe())
4. Ranking: memberikan ranking pada nilai dalam sebuah kolom
# Import library Pandas
import pandas as pd
# Load data dari file excel
df = pd.read_excel('data.xlsx')
# Memberikan ranking pada kolom jumlah_peserta
df['ranking_jumlah_peserta'] = df['jumlah_peserta'].rank(ascending=False)
# Cetak dataframe
print(df)
Itulah beberapa cara untuk menampilkan data dari dataframe. Tentu masih banyak operasi lain yang bisa dilakukan pada Pandas DataFrame, seperti filtering, grouping, joining, pivot table, dan sebagainya.
Step 6: Analisa Data dari DataFrame
Sekarang kita sudah memahami struktur data Pandas DataFrame dan mengerti cara membaca file excel dengan Pandas. Langkah selanjutnya adalah melakukan analisa data dari DataFrame untuk mendapatkan insight yang berguna. Analisa data mencakup berbagai macam teknik, dari yang sederhana seperti mencari nilai rata-rata atau nilai tertinggi, hingga yang kompleks seperti machine learning.
Contohnya, kita punya file excel yang berisi data peserta training di sebuah perusahaan, yaitu nama, usia, gender, posisi, dan jumlah peserta. Kita ingin tahu:
- Berapa rata-rata usia peserta training?
- Apa posisi dengan jumlah peserta terbanyak?
Untuk menjawab pertanyaan tersebut, kita bisa menggunakan beberapa operasi Pandas, seperti mean()
, value_counts()
, dan sebagainya.
# Import library Pandas
import pandas as pd
# Load data dari file excel
df = pd.read_excel('data.xlsx')
# 1. Menghitung rata-rata usia
rata_usia = df['usia'].mean()
print('Rata-rata usia peserta adalah', rata_usia)
# 2. Mencari posisi dengan jumlah peserta terbanyak
posisi_terbanyak = df['posisi'].value_counts().keys()[0]
jumlah_peserta_terbanyak = df['posisi'].value_counts()[0]
print('Posisi dengan jumlah peserta terbanyak adalah', posisi_terbanyak)
print('Jumlah peserta posisi tersebut adalah', jumlah_peserta_terbanyak)
Dalam contoh di atas, kita menggunakan fungsi mean()
pada kolom usia
untuk menghitung rata-rata usia peserta. Selain itu, kita juga menggunakan fungsi value_counts()
pada kolom posisi
untuk menghitung jumlah peserta untuk tiap-tiap posisi, lalu mengambil posisi dengan jumlah peserta terbanyak dengan menggunakan keys()[0]
dan [0]
.
Tentu saja analisa data tidak hanya sebatas itu. Dalam praktiknya, analisa data bisa mencakup beberapa teknik yang lebih kompleks, seperti:
- Clustering: mengelompokkan entitas dalam data menjadi beberapa kelompok
- Classification: memprediksi kelas dari entitas dalam data
- Regression: memprediksi nilai dari sebuah variabel dalam data berdasarkan variabel-variabel lainnya
- Time series analysis: analisa data yang berkaitan dengan waktu, seperti membaca data dari sensor atau social media
Pada akhirnya, kesuksesan analisa data sangat bergantung pada konteks, tujuan, dan kreativitas analis data.
Step 7: FAQ
Pertanyaan 1: Apa bedanya antara file excel dan file CSV?
Jawaban: File excel dan file CSV (comma-separated values) adalah dua format berbeda yang digunakan untuk menyimpan data tabel. File excel biasanya dibuat dan diedit menggunakan aplikasi Microsoft Excel, dan menyimpan data dalam format binary. File excel ideal digunakan untuk menyimpan data yang membutuhkan fitur-fitur seperti formatting, formula, dan sebagainya. Sedangkan file CSV adalah file plain text yang berisi data tabel yang dipisahkan oleh koma (atau karakter lainnya seperti tab atau titik koma). File CSV ideal digunakan untuk menyimpan data sederhana yang bisa diakses dari berbagai macam aplikasi dan bahasa pemrograman. Kedua format file tersebut bisa dibaca dengan Python, namun kita membutuhkan library yang berbeda-beda untuk membaca masing-masing format tersebut.
Pertanyaan 2: Apa keuntungan menggunakan Python untuk analisa data?
Jawaban: Ada beberapa keuntungan dalam menggunakan Python untuk analisa data, antara lain:
- Pandas, NumPy, dan matplotlib: Python mempunyai library-library yang sangat berguna untuk analisa data, seperti Pandas untuk membaca dan memanipulasi data, NumPy untuk operasi numerik, dan matplotlib untuk memvisualisasikan data.
- Open source: Python bersifat open source, artinya siapa saja bisa mengunduh dan menggunakannya secara gratis. Hal ini memungkinkan kolaborasi dan sharing knowledge yang luas.
- User-friendly: Python mempunyai sintaks yang mudah dipahami, sehingga memudahkan pengguna dengan background non-IT untuk bisa mempelajarinya.
- Scalable: Python mempunyai dukungan komunitas yang besar, sehingga bisa menangani data dalam skala besar.
Step 8: Video Tutorial – Cara Membaca File Excel dengan Python
Berikut adalah video tutorial singkat tentang cara membaca file excel dengan Python: