0Pricing
Learn AI with Python · Pelajaran

Tabel Pivot dan Tabulasi Silang

pd.pivot_table(), pd.crosstab(), dan pembentukan ulang data untuk statistik ringkasan.

Tabel Pivot dan Tabulasi Silang adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.

Membentuk Ulang Data untuk Mendapatkan Wawasan

Tabel pivot membentuk ulang data panjang menjadi kisi, dengan merangkum satu nilai berdasarkan dua sumbu kategorikal. Tabel ini adalah pivot dari lembar kerja yang sudah Anda kenal, tetapi dapat diprogram.

import pandas as pd
df = pd.DataFrame({
    "region": ["E", "E", "W", "W", "E"],
    "product": ["A", "B", "A", "B", "A"],
    "sales": [10, 20, 30, 40, 50],
})

pivot_table Dasar

pd.pivot_table menerima values (angka yang akan diringkas), index (baris), dan columns (kolom). Secara bawaan, fungsi ini menghitung rata-rata sel duplikat.

pt = pd.pivot_table(df, values="sales", index="region", columns="product")
print(pt)
# product     A     B
# region
# E        30.0  20.0
# W        30.0  40.0

Memilih Fungsi Agregasi

Tetapkan aggfunc untuk mengatur cara penggabungan data duplikat: jumlah, rata-rata, hitungan, dan lainnya. Gunakan daftar untuk menghitung beberapa fungsi sekaligus.

pt = pd.pivot_table(df, values="sales", index="region",
                    columns="product", aggfunc="sum")
print(pt)

Beberapa Fungsi Agregasi

Berikan daftar fungsi untuk menghitung beberapa ringkasan secara berdampingan.

pt = pd.pivot_table(df, values="sales", index="region",
                    aggfunc=["sum", "mean", "count"])
print(pt)

Mengisi Sel yang Hilang

Kombinasi tanpa data menjadi NaN. fill_value menggantikannya, sering kali dengan 0, agar laporan tetap bersih.

pt = pd.pivot_table(df, values="sales", index="region",
                    columns="product", aggfunc="sum", fill_value=0)
print(pt)

Margin (Total)

Tetapkan margins=True untuk menambahkan total keseluruhan baris dan kolom, yang secara bawaan diberi label "All".

pt = pd.pivot_table(df, values="sales", index="region",
                    columns="product", aggfunc="sum",
                    fill_value=0, margins=True)
print(pt)

Beberapa Tingkat Indeks

Berikan daftar ke index atau columns untuk membuat perincian hierarkis, misalnya berdasarkan wilayah lalu produk.

df["channel"] = ["on", "off", "on", "off", "on"]
pt = pd.pivot_table(df, values="sales",
                    index=["region", "channel"], aggfunc="sum")
print(pt)

Tabulasi Silang dengan crosstab

pd.crosstab adalah pivot khusus yang COUNTS frekuensi kombinasi dua variabel kategorikal, tanpa memerlukan kolom nilai.

ct = pd.crosstab(df["region"], df["product"])
print(ct)
# product   A  B
# region
# E         2  1
# W         1  1

Menormalisasi crosstab

Argumen normalize mengubah hitungan menjadi proporsi: "index" per baris, "columns" per kolom, atau True terhadap total keseluruhan.

ct = pd.crosstab(df["region"], df["product"], normalize="index")
print(ct)   # each row sums to 1.0

crosstab dengan Nilai

Berikan values dan aggfunc agar crosstab merangkum metrik, bukan menghitung, sehingga perbedaannya dengan pivot_table menjadi semakin tipis.

ct = pd.crosstab(df["region"], df["product"],
                 values=df["sales"], aggfunc="sum")
print(ct)

pivot_table vs crosstab

Gunakan pivot_table saat merangkum nilai numerik; gunakan crosstab saat menghitung frekuensi kombinasi kategori. crosstab juga memungkinkan normalisasi menjadi proporsi dalam satu baris kode.

Pemeriksaan Singkat

Uji pemahaman Anda tentang pembentukan ulang data.

Ringkasan

Perangkat pembentukan ulang data:

  • pd.pivot_table(values, index, columns, aggfunc) merangkum metrik
  • fill_value untuk sel kosong, margins=True untuk total
  • Gunakan daftar pada index/columns untuk membuat hierarki
  • pd.crosstab menghitung kombinasi; normalize menghasilkan proporsi

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Tabel Pivot dan Tabulasi Silang” gratis?

Ya — teks lengkap “Tabel Pivot dan Tabulasi Silang” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Tabel Pivot dan Tabulasi Silang”?

pd.pivot_table(), pd.crosstab(), dan pembentukan ulang data untuk statistik ringkasan. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Learn AI with Python?

Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Tabel Pivot dan Tabulasi Silang” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?

Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. GroupBy dan Agregasi
  2. Tabel Pivot dan Tabulasi Silang
  3. Penggabungan dan Penyatuan Lanjutan
  4. Deret Waktu dalam Pandas
← Kembali ke Learn AI with Python