User guide menjelaskan konsep secara naratif, tetapi di tengah pekerjaan kita sering butuh jawaban yang jauh lebih presisi: parameter apa saja yang diterima pd.DataFrame.pivot, nilai defaultnya apa, dan apa yang dikembalikannya. Itulah tugas API reference pandas — kamus teknis yang memuat setiap fungsi, class, dan method beserta signature-nya. Chapter ini melatih cara membaca halaman API reference dengan cepat dan menunjukkan bahwa signature yang sama bisa diperiksa langsung dari Python tanpa membuka peramban.

Anatomi Satu Halaman API Reference #

Setiap halaman API reference tersusun dengan pola tetap, sehingga kebiasaan membacanya sekali dipakai untuk ribuan halaman lain. Halaman pandas.DataFrame adalah contoh yang baik untuk dibedah dulu.

Bagian halamanIsinyaPertanyaan yang dijawab
SignatureNama lengkap, parameter, dan return type“Sintaks pemanggilannya seperti apa?”
ParametersArti, tipe, dan nilai default tiap parameter“Argumen ini untuk apa?”
ReturnsTipe dan isi nilai kembalian“Hasilnya berbentuk apa?”
RaisesException yang mungkin dimunculkan“Kapan pemanggilan gagal?”
See AlsoMethod atau fungsi yang berhubungan“Apa alternatifnya?”
ExamplesKode siap jalankan dengan hasilnya“Contoh nyatanya seperti apa?”

Urutan membaca yang efisien: mulai dari signature untuk memastikan nama parameternya, lompat ke Returns untuk memastikan tipe hasil, lalu baca Examples terakhir. Bagian Examples pada halaman pandas biasanya bisa langsung disalin ke REPL karena semua variabelnya didefinisikan di dalam contoh itu sendiri.

Membaca Signature dari dalam Python #

Signature resmi juga tersimpan bersama library, dan modul inspect bawaan Python membacanya. Skrip berikut mencetak signature tiga method pembentuk tabel yang kita kenal dari Section Menggabungkan dan Membentuk Data.

python
import inspect

import pandas as pd

metode = {
    "pd.DataFrame.pivot": pd.DataFrame.pivot,
    "pd.DataFrame.melt": pd.DataFrame.melt,
    "pd.DataFrame.groupby": pd.DataFrame.groupby,
}

for nama, obj in metode.items():
    print(nama)
    print(" ", inspect.signature(obj))
    print()

Output yang Dihasilkan:

text
pd.DataFrame.pivot
  (self, *, columns, index=<no_default>, values=<no_default>) -> 'DataFrame'

pd.DataFrame.melt
  (self, id_vars=None, value_vars=None, var_name=None, value_name: 'Hashable' = 'value', col_level: 'Level | None' = None, ignore_index: 'bool' = True) -> 'DataFrame'

pd.DataFrame.groupby
  (self, by=None, level: 'IndexLabel | None' = None, *, as_index: 'bool' = True, sort: 'bool' = True, group_keys: 'bool' = True, observed: 'bool' = True, dropna: 'bool' = True) -> 'DataFrameGroupBy'

Mari kita telaah output di atas:

  1. Tanda * sebelum columns: seluruh parameter setelahnya wajib ditulis sebagai keyword argument, jadi df.pivot(columns="kota") sah tetapi df.pivot("kota") memunculkan TypeError.
  2. Nilai <no_default>: parameter index dan values pada pivot tidak punya nilai default; kita harus memberinya sendiri, berbeda dengan id_vars=None pada melt yang berarti “opsional, kosong jika tidak diberi”.
  3. Anotasi tipe: teks seperti 'IndexLabel | None' adalah type hint — ringkasan tipe yang diterima parameter, dan 'DataFrameGroupBy' pada groupby menunjukkan hasilnya bukan DataFrame melainkan objek GroupBy yang siap diagregasi.

Tiga baris output ini menjawab pertanyaan yang di halaman web butuh scroll: pivot berbasis keyword-only, melt punya banyak default yang nyaman, dan groupby mengembalikan objek GroupBy — bukan DataFrame jadi.

Halaman API yang Layak Disimpan #

Tiga halaman berikut menjadi titik berangkat yang baik karena ketiganya sering dirujuk lintas section.

HalamanKapan dibuka
pandas.DataFrameMelihat daftar lengkap method DataFrame dari constructor sampai plotting
pandas.read_csvMenyetel pembacaan CSV: usecols, dtype, parse_dates, nrows
pandas.DataFrame.mergeMenyetel penggabungan tabel: how, on, suffixes, validate

Dari halaman pandas.DataFrame, semua method bisa dicapai lewat tautan “index” di bagian atas halaman; daftar method pandas.Series punya pola halaman yang sama dengan awalan pandas.Series.. Perhatikan juga bahwa signature adalah jendela ke versi: ketika sebuah parameter hilang atau bertambah antar rilis, signature di API reference versi terbaru berubah lebih dulu, dan halaman What’s New rilis terkait yang menjelaskan kenapa.

Signature memberi kepastian sintaks, tetapi tidak memberi konteks latihan: kapan sebaiknya method itu dipakai, dan bagaimana menyusunnya menjadi alur kerja yang utuh. Untuk pembelajaran yang lebih terstruktur dari dokumentasi, kita beralih ke buku — pokok bahasan Chapter berikutnya.