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