Pandas: Fondasi Analisis Data di Python
Dalam era digital saat ini, data menjadi aset yang sangat berharga. Namun, data mentah sering kali sulit dipahami dan tidak langsung memberikan informasi yang bermanfaat. Di sinilah Pandas hadir sebagai salah satu library Python paling populer untuk data analysis dan data manipulation.
Pandas dirancang agar pengguna Python dapat bekerja dengan data secara efisien, cepat, dan fleksibel. Dengan Pandas, kita dapat meggunakan:
- Membaca dan menulis data dari berbagai format (CSV, Excel, SQL, JSON, dll.).
- Mengolah data dalam bentuk tabel (DataFrame) atau kolom tunggal (Series).
- Melakukan operasi dasar seperti filtering, sorting, grouping, dan aggregating.
- Membersihkan data yang tidak rapi agar siap untuk dianalisis lebih lanjut.
- Menggabungkan data dari berbagai sumber dengan mudah.
Keunggulan utama Pandas adalah struktur datanya yang intuitif:
Series → Representasi data satu dimensi (mirip kolom dalam tabel).
- DataFrame → Representasi data dua dimensi (mirip tabel Excel atau database).
Karena kemampuannya yang luas dan sintaks yang mudah dipahami, Pandas menjadi tool wajib bagi data analyst, data scientist, hingga peneliti akademik. Baik untuk analisis sederhana maupun proyek machine learning yang kompleks, Pandas selalu menjadi titik awal dalam pengolahan data. Berikut ilustrasi struktur data.
- Vektor → sekumpulan elemen (biasanya angka) dalam satu dimensi, misal list angka dalam 1 dimensi.
- Array → struktur data NumPy, bisa 1D, 2D, dst.
- Matriks → bentuk khusus array 2D, sering dipakai di aljabar linear.
- DataFrame → tabel 2 dimensi milik Pandas, mirip Excel.
Berikut contoh-contohnya:
import numpy as np
import pandas as pd
# === 1. VEKTOR (1 dimensi)
vektor = np.array([10, 20, 30, 40, 50])
print("Vektor:")
print(vektor)
print()
# === 2. ARRAY (NumPy bisa 1D, 2D, dst.)
array_2d = np.array([[1, 2, 3],
[4, 5, 6]])
print("Array 2D:")
print(array_2d)
print()
# === 3. MATRIKS (khusus 2D, bisa pakai NumPy matrix)
matriks = np.matrix([[7, 8],
[9, 10]])
print("Matriks:")
print(matriks)
print()
# === 4. DATAFRAME (Pandas)
data = {
"Nama": ["Andi", "Budi", "Citra"],
"Umur": [23, 25, 22],
"Nilai": [85, 90, 88]
}
df = pd.DataFrame(data)
print("DataFrame Pandas:")
print(df)
Contoh Pandas
1. Import pandas
import pandas as pd # 'pd' jadi alias untuk pandas
2. Membuat DataFrame dari dict
data = {"Nama":["A","B","C"], "Umur":[21,25,30]}
df = pd.DataFrame(data) # DataFrame sederhana
3. Membaca file CSV
df = pd.read_csv("data.csv") # load data CSV
4. Menyimpan ke CSV
df.to_csv("output.csv", index=False) # simpan tanpa index
5. Melihat 5 baris awal
df.head() # default 5 baris pertama
6. Melihat 5 baris terakhir
df.tail() # default 5 baris terakhir
7. Info DataFrame
df.info() # tipe data tiap kolom + jumlah data
8. Statistik deskriptif
df.describe() # mean, std, min, max, dll
9. Mengakses kolom
df["Umur"] # akses kolom sebagai Series
10. Mengakses baris
df.iloc[0] # ambil baris pertama
11. Filter kondisi
df[df["Umur"] > 25] # hanya baris dengan Umur > 25
12. Menambahkan kolom baru
df["Status"] = ["A","B","C"] # tambah kolom
13. Menghapus kolom
df.drop("Status", axis=1, inplace=True) # hapus kolom
14. Mengurutkan data
df.sort_values("Umur") # urutkan berdasarkan Umur
15. GroupBy
df.groupby("Nama")["Umur"].mean() # rata-rata umur per nama
16. Menggabungkan DataFrame
df2 = pd.DataFrame({"Nama":["D"], "Umur":[40]})
pd.concat([df, df2]) # gabungkan ke bawah
17. Merge DataFrame
df3 = pd.DataFrame({"Nama":["A","B"], "Nilai":[90,85]})
pd.merge(df, df3, on="Nama") # join berdasarkan Nama
18. Reset index
df.reset_index(drop=True, inplace=True) # reset index
19. Set kolom sebagai index
df.set_index("Nama", inplace=True) # jadikan kolom Nama sebagai index
20. Menghapus baris NaN
df.dropna() # hapus baris dengan nilai kosong
21. Mengisi NaN dengan nilai
df.fillna(0) # ganti NaN dengan 0
22. Pivot table
pd.pivot_table(df, values="Umur", index="Nama", aggfunc="mean") # ringkas data
Selengkapnya View Modul Pandas
Daftar Dataset
- 1. Data Penjualan
- 2. Data Regresi Berganda
- 3. Data Penjualan dan Data Kategori
- 4. BTC-USDT 2010-2019
- 5. BTC-USDT 2018-2023
