Guides Power BI

Pemodelan Data – Power BI

Pengenalan Power BI dan Integrasi Data dan Dashboard. Gunakan kotak pencarian di atas untuk menyaring bagian.

1. Dari konsep ke praktik data

Empat aktivitas pokok: Memahami → Melakukan → Memeriksa → Menghasilkan.

KonsepKetika bekerja dengan data
EntitasKelompok objek/data yang direpresentasikan (tabel)
AtributKolom
RecordBaris
Tipe dataText, Number, Date, dll.
Kualitas dataNull, duplikat, inkonsistensi
RelasiHubungan antartabel
Struktur dataSusunan tabel dan kolom

2. Power BI Desktop & antarmuka

Power BI Desktop = aplikasi desktop untuk membangun solusi analisis data dan laporan Power BI.

BagianFungsi
RibbonMenu/tab perintah di bagian atas (Home, Insert, Modeling, View, dll.).
View selectorIkon di sisi kiri untuk berpindah view (Report, Table, Model, DAX query, TMDL).
CanvasArea kerja tempat visual/laporan disusun.
Filters paneMengelola filter pada visual, halaman, maupun seluruh report.
Visualizations paneMemilih jenis visual dan mengatur field well serta format visual.
Data paneMenampilkan tabel dan kolom yang tersedia setelah data dimuat.

3. View selector

ViewFungsiDigunakan untuk
Report viewMembuat dan mengatur visualisasi/laporanMembuat grafik, tabel, kartu, slicer, dashboard
Table viewMelihat isi data yang sudah dimuatMemeriksa baris/kolom, tipe data, membuat calculated column atau measure
Model viewMelihat dan mengatur hubungan antartabelMembuat relationship, memeriksa kardinalitas, merancang model data
DAX query viewMenulis & menjalankan query DAXMenguji perhitungan, eksplorasi data, memeriksa hasil DAX
TMDL viewMelihat/mengubah struktur model lewat kodeMengedit metadata tabel, kolom, measure, relationship secara lanjut

4. Power Query Editor

Power Query Editor = lingkungan di Power BI untuk menghubungkan, memeriksa, dan menyiapkan data sebelum digunakan lebih lanjut.

Bagian utama: Queries pane (daftar query, kiri), Data preview (tengah), Query Settings (kanan, berisi Properties & Applied Steps).

Power Query Editor vs Table View
Power Query Editor → tempat memeriksa dan menyiapkan data.
Table View → melihat data yang sudah dimuat ke Power BI.

5. Import Excel, Load vs Transform

Langkah import

  1. Home → Get Data → Excel Workbook.
  2. Pilih file (File: Pilih-File.xlsx) → Open.
  3. Di Navigator, pilih sheet/table (File: sheet Penjualan, berisi Excel Table bernama Sales).
TombolArti
LoadLangsung memuat data ke Power BI tanpa diperiksa.
Transform DataMembuka data dulu di Power Query Editor agar dapat diperiksa/disiapkan. (Yang dipilih di praktik.)

6. Tipe data

Power Query menunjukkan tipe data lewat ikon di header kolom (ABC = Text, 123 = Whole Number, 1.2 = Decimal/Number, kalender = Date).

KolomTipe yang diharapkan
Transaction_IDText
Transaction_DateDate
Customer_NameText
QuantityWhole Number
Unit_PriceNumber
Total_SalesNumber

Cara mengubah: klik ikon tipe data di header kolom → pilih tipe (mis. Quantity → Whole Number; Transaction_Date → Date).

7. Pemeriksaan kualitas data

PemeriksaanKolom yang dicek
Nilai kosong (null)Customer_Name, Category, Payment_Method, Quantity
Konsistensi penulisanCategory, City, Payment_Method
Kesalahan penulisan (typo)City, Product, Salesperson
Isi kolom numerikQuantity, Unit_Price, Total_Sales
Nilai tidak wajarQuantity, Unit_Price
Data duplikatTransaction_ID

Masalah kualitas data umum: null, duplikat, inkonsistensi (penulisan beda untuk nilai sama), typo, tipe data salah, nilai tidak wajar.

8. Transformasi dasar di Power Query

MasalahSolusiMenu
Penulisan kategori beda (elektronik, ELEKTRONIK)Ganti jadi "Elektronik"Pilih kolom → Transform → Replace Values (Value to Find / Replace With)
Spasi berlebih di awal/akhir teksTrimTransform → Format → Trim
Huruf besar/kecil tidak seragamCapitalize Each WordTransform → Format → Capitalize Each Word
Typo (Surabya)Ganti jadi SurabayaTransform → Replace Values
Metode bayar beda istilahStandarkan nilaiReplace Values
Tipe data salahUbah tipeIkon tipe data di header
Baris gandaRemove DuplicatesHome → Remove Rows → Remove Duplicates

Trim diterapkan pada: Category, Product, City, Salesperson, Payment_Method, Customer_Type.
Capitalize Each Word: City, Salesperson, Category.

Standarisasi Payment_Method

Nilai asal (konsep sama)Jadi
transfer, Bank Transfer, TransferTransfer (satu istilah)
Ewallet, E-WalletE-Wallet
Tunai, CashTunai / Cash (pilih satu)

Setiap transformasi tercatat di Applied Steps (Query Settings) dan bisa dihapus/diubah urutannya.

9. Menangani nilai kosong: null vs 0

  • Kolom kosong pada dataset: Customer_Name, Category, Payment_Method (dan Quantity).
  • Kolom teks Payment_Method null → diberi label "Tidak Diketahui" (Replace Values: null → Tidak Diketahui).
  • Quantity kosong → dibiarkan null.
null = nilainya tidak diketahui.
0 = diketahui bahwa jumlahnya memang nol.
Mengganti null dengan 0 pada angka bisa menyesatkan perhitungan (mis. rata-rata turun).

10. Hapus duplikat & Close & Apply

Remove Duplicates

  1. Pilih kolom Transaction_ID.
  2. Tab Home → Remove Rows → Remove Duplicates.

Bisa dicek dulu lewat Keep Rows → Keep Duplicates, atau langsung hapus lewat Remove Rows.

Memuat data

  1. Power Query Editor → Home → Close & Apply.
  2. Buka Table View → pilih tabel Penjualan untuk melihat hasil.

11. Visualisasi dasar (File)

Semua dibuat di Report View.

VisualFieldAgregasiTujuan
Clustered column chartCity → X-axis; Total_Sales → Y-axisSumTotal penjualan per kota
Clustered bar chartProduct → Y-axis; Total_Sales → X-axisSumTotal penjualan per produk
Pie chartCustomer_Type → Legend; Transaction_ID → ValuesCountProporsi transaksi per tipe pelanggan (bagian terhadap keseluruhan)
Line chartTransaction_Date → X-axis; Total_Sales → Y-axisSumTren penjualan per tanggal

Column vs Bar: column = batang vertikal (kategori di X-axis); bar = batang horizontal (kategori di Y-axis), cocok untuk label panjang seperti nama produk.

Pertanyaan analisis line chart: apakah penjualan tiap hari sama? Tanggal mana penjualan tinggi? Ada pola/perubahan tertentu?

12. Alur integrasi data & dashboard

  1. Menggabungkan data – Append transaksi periodik, Merge referensi berdasarkan kunci.
  2. Menghitung nilai – membuat Nilai_Penjualan, memeriksa baris hasil integrasi.
  3. Membangun dashboard – 4 KPI, 5 visual analisis, 3 slicer.
  4. Menguji & menjelaskan – uji Top N, interaksi, drill-down, tafsirkan temuan.

13. Get Data: memilih 4 sheet

  1. Buka Power BI Desktop → Home → Get data → Excel workbook → pilih File_Anda → Open.
  2. Di Navigator centang: Penjualan_Januari, Penjualan_Februari, Produk, Pelanggan.
  3. Cek preview → klik Transform Data.

14. Append vs Merge

APPEND QueriesMERGE Queries
FungsiMenumpuk baris dari tabel berstruktur kolom serupaMenambah kolom dari tabel lain berdasarkan kolom kunci (ID)
ArahVertikal (ke bawah)Horizontal (ke samping)
SyaratNama & struktur kolom sama/serupaAda kolom kunci yang cocok di kedua tabel
Contoh Januari 80 + Februari 80 → 160 baris, tetap 7 kolom160 baris tetap; kolom 7 → 10 → 13
Padanan SQLUNION ALLJOIN
APPEND = menambah BARIS  |  MERGE = menambah KOLOM berdasarkan kunci

Alur: Penjualan_Januari + Penjualan_Februari —Append→ Penjualan_Gabungan —Merge (Produk via ID_Produk, Pelanggan via ID_Pelanggan)→ data lengkap 13 kolom.

15. Langkah Append Queries as New

  1. Klik query Penjualan_Januari di Query Pane.
  2. Home → Append Queries → Append Queries as New.
  3. Pilih Two tables. Table 1: Penjualan_Januari; Table 2: Penjualan_Februari.
  4. OK → rename Append1 menjadi Penjualan_Gabungan.

Append Queries biasa = hasil ditambahkan ke query yang sedang dipilih. Append Queries as New = hasil jadi query baru, query asal tetap utuh. Opsi Three or more tables untuk lebih dari dua tabel.

16. Langkah Merge & Expand

Sebelum Merge, perbaiki header tabel Produk dan Pelanggan: Home → Use First Row as Headers.

Merge dengan Produk

  1. Pilih query Penjualan_Gabungan → Home → Merge Queries → Merge Queries.
  2. Tabel atas: Penjualan_Gabungan; tabel bawah: Produk.
  3. Klik kolom ID_Produk di kedua tabel.
  4. Join kind: Left Outer (all from first, matching from second) → OK.

Expand Produk

  1. Di kolom Produk (bertipe Table) klik ikon Expand (dua panah).
  2. Nonaktifkan Select All Columns → centang Nama_Produk, Kategori, Merek.
  3. Hapus centang Use original column name as prefix → OK.
  4. Pastikan baris tetap 160. Kolom jadi 10.

Merge & Expand Pelanggan

  1. Tetap di Penjualan_Gabungan → Merge Queries → tabel bawah Pelanggan.
  2. Kunci: ID_Pelanggan; Join kind: Left Outer → OK (muncul kolom Pelanggan bertipe Table).
  3. Expand → pilih Nama_Pelanggan, Kota, Segmen, nonaktifkan prefix → OK.
  4. Hasil: 13 kolom, 160 baris.
TahapKolomBaris
Setelah Append7160
Setelah Merge Produk10160
Setelah Merge Pelanggan13160
Setelah Nilai_Penjualan, Bulan, Bulan_Ke16160

17. Jenis join (Join kind)

Join kindHasil
Left OuterSemua baris tabel kiri (pertama) + yang cocok dari tabel kanan. Dipakai di praktik.
Right OuterSemua baris tabel kanan + yang cocok dari kiri.
Full OuterSemua baris dari kedua tabel.
InnerHanya baris yang cocok di kedua tabel.
Left AntiBaris kiri yang tidak punya pasangan di kanan.
Right AntiBaris kanan yang tidak punya pasangan di kiri.

Mengapa Left Outer? Semua baris penjualan dipertahankan; kolom referensi yang cocok ditambahkan; tidak ada transaksi terbuang hanya karena belum menemukan pasangan di tabel referensi (jika tidak cocok, kolom tambahan bernilai null).

18. Custom Column, Bulan, Bulan_Ke

Nilai_Penjualan

  1. Pilih Penjualan_Gabungan → Add Column → Custom Column.
  2. New column name: Nilai_Penjualan; formula: [Jumlah] * [Harga_Satuan].
  3. OK → cek hasil numerik dan tidak ada Error.

Contoh: Jumlah 6 × Harga_Satuan 68.000 = 408.000. Tujuan: memperoleh omzet per baris transaksi.

Bulan & Bulan_Ke

  1. Klik kolom Tanggal → Add Column → Date → Month → Name of Month → rename jadi Bulan.
  2. Klik Tanggal lagi → Add Column → Date → Month → Month → rename jadi Bulan_Ke.
  3. Cek Januari = 1, Februari = 2.
FieldKegunaan
BulanSlicer / Matrix
Bulan_KeUrutan bulan (Sort by Column)
TanggalDate Hierarchy

19. Enable Load, Close & Apply, Sort by Column

Enable Load

  1. Klik kanan Penjualan_Januari → hilangkan centang Enable Load. Ulangi untuk Penjualan_Februari, Produk, Pelanggan.
  2. Biarkan Enable Load aktif hanya pada Penjualan_Gabungan.
  3. Home → Close & Apply → Table View → pilih Penjualan_Gabungan.

Alasan: tabel sumber hanya dipakai sebagai bahan Append/Merge; tidak perlu dimuat ke model agar model ringkas. Hasil: 1 tabel aktif, 160 baris, 16 kolom.

Sort by Column (urutan bulan)

  1. Report View → klik field Bulan di Data Pane.
  2. Tab Column tools → Sort by column → pilih Bulan_Ke.

Tanpa pengaturan: urutan alfabetis (Februari sebelum Januari). Dengan Bulan_Ke: urutan kalender (Januari lalu Februari).

20. Pertanyaan bisnis → pilihan visual

PertanyaanVisual
Berapa total omzet?Card
Bagaimana tren per tanggal?Line chart
Kategori mana terbesar?Column chart
Produk mana terlaris secara omzet?Top 5 Bar chart
Segmen mana terbesar (proporsi)?Donut chart
Bagaimana rincian tiap bulan?Matrix

Menyiapkan halaman

  1. Report View → klik kanan tab Page 1 → Rename → Dashboard Penjualan.
  2. Klik area kosong → Format page → Canvas settings → Page size → 16:9.
  3. Tambahkan Text box untuk judul dan periode (Januari–Februari 2026).

21. KPI Card & agregasi

CardFieldAgregasiHasil target
Total Nilai PenjualanNilai_PenjualanSum (format Rp #,##0)Rp60.013.000
Jumlah TransaksiID_TransaksiDistinct Count130
Total Produk TerjualJumlahSum491
Jumlah PelangganID_PelangganDistinct Count40

Langkah card: pilih ikon Card → seret field ke Data/Fields → pilih agregasi di dropdown field → Format visual: Title, Callout value, background → atur ukuran & posisi.

Count vs Distinct Count: Count menghitung semua baris (termasuk ID yang berulang); Distinct Count menghitung nilai unik. Satu transaksi bisa berisi beberapa baris produk, sehingga jumlah transaksi memakai Distinct Count (130, bukan 160).
AgregasiArti
SumJumlah total
AverageRata-rata
Minimum / MaximumNilai terkecil / terbesar
CountBanyak baris berisi nilai
Distinct CountBanyak nilai unik
Don't summarizeTanpa agregasi

22. Visual analisis dashboard

VisualField wellPengaturan pentingHasil
Line chart – Tren PenjualanX-axis: Tanggal; Y-axis: Nilai_Penjualan (Sum)Dropdown Tanggal → Date HierarchyData per tingkat waktu (Year → Quarter → Month → Day), bisa drill-down
Clustered column – Penjualan per KategoriX-axis: Kategori; Y-axis: Nilai_Penjualan (Sum)Titik tiga → Sort axis by nilai penjualan → Descending; Data labels onElektronik kategori omzet terbesar
Clustered bar – Top 5 ProdukY-axis: Nama_Produk; X-axis: Nilai_Penjualan (Sum)Filters on this visual → Nama_Produk → Filter type Top N = 5, By value: Sum of Nilai_Penjualan → Apply filterHanya 5 produk omzet tertinggi
Donut – Komposisi per SegmenLegend: Segmen; Values: Nilai_Penjualan (Sum)Detail labels: Category + PercentKontribusi Reguler, Member, Corporate
Matrix – Rincian Penjualan ProdukRows: Kategori → Nama_Produk; Columns: Bulan; Values: Nilai_Penjualan (Sum)Pakai Matrix, bukan TableRincian Januari, Februari, dan Total

Perbedaan penting

  • Pie vs Donut: sama-sama proporsi bagian terhadap keseluruhan; donut berlubang di tengah.
  • Table vs Matrix: Table = daftar datar baris-kolom; Matrix = seperti pivot table, punya Rows, Columns, Values, subtotal, dan bisa expand/drill-down hierarki.
  • Top N: filter tingkat visual yang menampilkan N item teratas (atau terbawah) berdasarkan suatu nilai.
  • Drill-down: menelusuri dari level tinggi ke level rinci dalam hierarki (mis. Year → Month → Day, atau Kategori → Nama_Produk).

23. Slicer

Slicer = visual filter di kanvas sehingga pengguna dapat menyaring data tanpa membuka Filter Pane. Semua KPI dan grafik ikut merespons (interaksi antarvisual).

SlicerFieldPengaturan
1BulanStyle Dropdown / Tile; urutan Januari → Februari
2KategoriList atau Dropdown
3KotaAktifkan Search bila perlu
  • Selection: Single select atau Multi-select (atur konsisten).
  • Letakkan ketiga slicer dalam satu baris; uji kombinasi bulan + kategori + kota.
  • Hapus pilihan (clear) untuk menampilkan seluruh data.

Slicer vs Filter Pane: slicer tampil di kanvas dan mudah dipakai pembaca laporan; Filter Pane bisa diatur per visual, per halaman, atau semua halaman.

24. Tabel cepat: menu & lokasi

TujuanLokasi menu
Import ExcelHome → Get data → Excel workbook
Buka Power QueryTransform Data
Header dari baris pertamaHome → Use First Row as Headers
Ganti nilai / typoTransform → Replace Values
Hapus spasi awal/akhirTransform → Format → Trim
Kapitalisasi tiap kataTransform → Format → Capitalize Each Word
Ubah tipe dataIkon tipe di header kolom
Hapus duplikatHome → Remove Rows → Remove Duplicates
Gabung barisHome → Append Queries (as New)
Gabung kolom via kunciHome → Merge Queries
Ambil kolom hasil mergeIkon Expand (dua panah)
Kolom rumusAdd Column → Custom Column
Nama/nomor bulanAdd Column → Date → Month → Name of Month / Month
Tidak memuat queryKlik kanan query → Enable Load (uncheck)
Muat ke modelHome → Close & Apply
Urutkan bulanColumn tools → Sort by column → Bulan_Ke
Ukuran halamanFormat page → Canvas settings → Page size 16:9
Top NFilters on this visual → Filter type Top N

25. Daftar istilah

IstilahArti singkat
QueryLangkah pengambilan & transformasi data di Power Query.
Applied StepsRiwayat langkah transformasi pada sebuah query.
NavigatorJendela memilih sheet/tabel saat import.
Kolom kunci (key)Kolom pencocok antartabel saat Merge (ID_Produk, ID_Pelanggan).
Tabel referensi / dimensiTabel deskriptif (Produk, Pelanggan).
Tabel transaksi / faktaTabel berisi kejadian/angka (Penjualan).
KPIKey Performance Indicator, ukuran utama kinerja (ditampilkan via Card).
Field wellKotak isian field pada visual (X-axis, Y-axis, Legend, Values, Rows, Columns).
Date HierarchyHierarki otomatis tanggal: Year → Quarter → Month → Day.
Calculated column / MeasureKolom/ukuran hasil perhitungan DAX di model.
KardinalitasJenis hubungan antartabel (one-to-many, one-to-one, many-to-many).
DAXData Analysis Expressions, bahasa rumus di Power BI.
MBahasa di balik langkah Power Query.