Main Logo
  • Home
  • About
  • Kursus
    • Paket Kursus
    • Roadmap Profesi
  • Elearning
  • Blog
Daftar
Main Logo
  • Home
  • About
  • Kursus
    • Paket Kursus
    • Roadmap Profesi
  • Elearning
  • Blog

Cara Menghitung dan Visualisasi Korelasi Antar Kolom

  • July 31, 2026
  • oleh Edusoft Center

Pernah nggak sih kamu penasaran apakah dua hal di data kamu itu saling berhubungan? Misalnya, apakah budget iklan yang lebih besar benar-benar bikin penjualan naik? Nah, di tutorial ini kita akan belajar step-by-step cara menghitung korelasi antar kolom pakai Python, sampai memvisualisasikannya jadi heatmap yang enak dilihat.

Tutorial ini ditulis buat pemula, jadi kita akan jalan pelan-pelan mulai dari nol: siapin data, install library, sampai tampilkan hasilnya dalam bentuk grafik. Siapkan editor kode kamu (VS Code, Jupyter Notebook, atau apa saja yang biasa kamu pakai), dan ikuti langkah-langkahnya satu per satu.

Yang Kamu Butuhkan Sebelum Mulai

Sebelum masuk ke kode, pastikan dulu tiga hal ini sudah siap:

  1. Python sudah terinstall di komputer kamu (versi 3.8 ke atas sudah cukup).
  2. Library pandas, seaborn, dan matplotlib sudah terinstall.
  3. File data dalam format CSV yang mau kamu analisis.

Kalau library-nya belum ada, install dulu lewat terminal:

bash

pip install pandas seaborn matplotlib

Tunggu sampai proses instalasi selesai, baru lanjut ke langkah berikutnya.

Langkah 1: Siapkan Data Contoh

Supaya tutorial ini bisa langsung kamu praktikkan tanpa bingung cari data, mari buat file CSV sederhana dulu. Buat file baru bernama data_penjualan.csv, lalu isi seperti ini:

csv

budget_iklan,jumlah_pengunjung,penjualan,harga_produk
100,500,1200,50
150,650,1500,48
200,800,1900,45
120,550,1300,52
250,900,2100,44
300,1000,2400,42
180,700,1700,47
220,850,2000,45
90,450,1100,55
280,950,2300,43

Simpan file ini di folder yang sama dengan file Python kamu. Kalau kamu sudah punya data sendiri, boleh langsung pakai file itu, cukup ganti nama filenya nanti di kode.

Langkah 2: Import Library dan Baca Data

Buat file baru, misalnya visualisasi_korelasi.py, lalu tulis kode berikut:

python

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

# Baca data dari file CSV
df = pd.read_csv("data_penjualan.csv")

# Lihat 5 baris pertama untuk memastikan data terbaca dengan benar
print(df.head())

Jalankan kode ini dulu. Kalau muncul tabel berisi kolom budget_iklan, jumlah_pengunjung, penjualan, dan harga_produk, berarti datanya sudah terbaca dengan sukses. Kalau muncul error FileNotFoundError, cek lagi apakah file CSV-nya benar-benar ada di folder yang sama dengan file Python kamu.

Langkah 3: Hitung Korelasi Antar Kolom

Sekarang bagian utamanya. Tambahkan kode berikut di bawah kode sebelumnya:

python

# Hitung korelasi Pearson antar semua kolom numerik
korelasi = df.corr(method="pearson")
print(korelasi)

Jalankan lagi kodenya. Kamu akan melihat output berupa tabel matriks, kira-kira seperti ini:

                   budget_iklan  jumlah_pengunjung  penjualan  harga_produk
budget_iklan           1.000000           0.987432   0.991562     -0.968214
jumlah_pengunjung      0.987432           1.000000   0.995218     -0.945103
penjualan              0.991562           0.995218   1.000000     -0.958732
harga_produk          -0.968214          -0.945103  -0.958732      1.000000

Cara bacanya sederhana: angka mendekati 1 berarti dua kolom itu bergerak searah (naik bareng), angka mendekati -1 berarti berlawanan arah (satu naik, satu turun), dan angka mendekati 0 berarti hampir tidak ada hubungan. Di contoh ini, misalnya, budget_iklan dan penjualan punya korelasi 0.99, artinya keduanya berhubungan sangat kuat dan searah.

Kalau kamu cuma penasaran dengan hubungan dua kolom spesifik saja, tidak perlu hitung semuanya. Cukup tulis:

python

korelasi_dua_kolom = df["budget_iklan"].corr(df["penjualan"])
print(f"Korelasi budget iklan dan penjualan: {korelasi_dua_kolom:.2f}")

Langkah 4: Ubah Matriks Angka Jadi Heatmap

Tabel angka memang informatif, tapi kalau kolomnya banyak, jujur saja agak melelahkan dibaca satu-satu. Di sinilah heatmap membantu, kita bisa langsung “lihat” polanya lewat warna.

Tambahkan kode berikut:

python

plt.figure(figsize=(8, 6))
sns.heatmap(korelasi, annot=True, cmap="coolwarm", fmt=".2f", linewidths=0.5)
plt.title("Heatmap Korelasi Antar Kolom")
plt.tight_layout()
plt.show()

Setelah dijalankan, akan muncul jendela baru berisi grafik heatmap. Warna merah biasanya menandakan korelasi positif kuat, warna biru menandakan korelasi negatif kuat, dan warna netral di tengah menandakan hubungan yang lemah. Angka di setiap kotak (berkat annot=True) memudahkan kamu membaca nilai persisnya tanpa harus menebak dari warna saja.

Langkah 5: Lihat Hubungan Dua Variabel Lebih Detail dengan Scatter Plot

Heatmap bagus untuk gambaran besar, tapi kalau kamu mau lihat lebih detail bagaimana bentuk hubungan antara dua kolom tertentu, pakai scatter plot:

python

sns.scatterplot(data=df, x="budget_iklan", y="penjualan")
plt.title("Hubungan Budget Iklan dan Penjualan")
plt.xlabel("Budget Iklan")
plt.ylabel("Penjualan")
plt.show()

Kalau titik-titiknya membentuk garis lurus naik, itu tanda korelasi positif yang kuat, sama seperti yang sudah ditunjukkan angka korelasinya tadi.

Langkah 6: (Opsional) Lihat Semua Pasangan Kolom Sekaligus

Kalau kamu ingin eksplorasi lebih jauh dan melihat hubungan setiap pasangan kolom sekaligus dalam satu tampilan, gunakan pair plot:

python

sns.pairplot(df)
plt.show()

Perlu diketahui, kalau kolomnya banyak, proses render pair plot ini bisa memakan waktu agak lama. Jadi gunakan langkah ini kalau memang perlu eksplorasi mendalam, bukan sebagai langkah wajib di setiap analisis.

Kode Lengkap

Supaya lebih mudah, ini kode lengkap dari langkah 1 sampai 6 yang sudah digabung:

python

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

# 1. Baca data
df = pd.read_csv("data_penjualan.csv")
print(df.head())

# 2. Hitung korelasi
korelasi = df.corr(method="pearson")
print(korelasi)

# 3. Visualisasi heatmap
plt.figure(figsize=(8, 6))
sns.heatmap(korelasi, annot=True, cmap="coolwarm", fmt=".2f", linewidths=0.5)
plt.title("Heatmap Korelasi Antar Kolom")
plt.tight_layout()
plt.show()

# 4. Visualisasi scatter plot
sns.scatterplot(data=df, x="budget_iklan", y="penjualan")
plt.title("Hubungan Budget Iklan dan Penjualan")
plt.show()

Kesalahan Umum yang Sering Terjadi

Beberapa error yang biasanya muncul buat pemula, siapa tahu kamu mengalaminya juga:

  • ModuleNotFoundError: No module named 'seaborn' — berarti library seaborn belum terinstall, jalankan lagi pip install seaborn.
  • FileNotFoundError — file CSV tidak ditemukan, pastikan nama file dan lokasinya sudah benar, atau gunakan path lengkap seperti pd.read_csv("C:/Users/nama/data_penjualan.csv").
  • Grafik tidak muncul — kalau kamu pakai VS Code atau terminal biasa (bukan Jupyter Notebook), pastikan ada baris plt.show() di akhir kode, karena tanpa ini grafiknya tidak akan ditampilkan.
  • Kolom teks ikut dihitung dan error — fungsi df.corr() hanya bekerja untuk kolom numerik. Kalau ada kolom berisi teks (misalnya nama produk), pandas versi terbaru otomatis mengabaikannya, tapi kalau kamu pakai versi lama, tambahkan numeric_only=True di dalam df.corr().

Penutup

Sampai di sini, kamu sudah berhasil menghitung korelasi antar kolom dan menampilkannya dalam bentuk heatmap serta scatter plot. Coba sekarang ganti file data_penjualan.csv dengan data kamu sendiri, lalu jalankan ulang semua langkah di atas. Perhatikan pola apa yang muncul, mungkin saja kamu menemukan hubungan menarik yang selama ini belum kamu sadari dari data yang sudah lama kamu simpan.

Ingat satu hal penting: korelasi tinggi tidak selalu berarti sebab-akibat. Anggap hasil korelasi ini sebagai titik awal untuk bertanya lebih jauh, bukan kesimpulan akhir.

Tags: analisis dataBelajar pythonData Scienceheatmap pythonkorelasi datamachine learning pemulapandasseaborntutorial pythonvisualisasi data
Previous Post

Post comment

Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • Cara Menghitung dan Visualisasi Korelasi Antar Kolom
  • Mengenal Server Lokal dan Server Cloud
  • Panduan Mengelola Dependensi Proyek Python
  • Visualisasi Distribusi Data dengan Boxplot
  • Mengenal Ekosistem Python untuk Data Analysis: Library yang Wajib Diketahui Pemula

Arsip

  • July 2026
  • June 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • September 2025
  • August 2025
  • July 2025
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • December 2011
  • November 2011

Tags

#EdusoftCenter apache web server dns server kursus android kursus database kursus dns dan web server kursus dns server kursus ethical hacking kursus hacking kursus jaringan kursus jaringan linux Kursus Komputer kursus komputer di solo kursus komputer di solo / surakarta kursus komputer di surakarta kursus linux Kursus Linux Forensics kursus linux networking kursus linux security kursus linux server kursus mikrotik kursus networking kursus network security kursus php Kursus PHP dan MySQL kursus php mysql kursus proxy kursus security kursus ubuntu kursus ubuntu server kursus web kursus web security kursus web server kursus wordpress kursus wordpress theme linux MySQL pelatihan komputer di solo PHP security training komputer training komputer di solo tutorial php ubuntu wordpress

© Edusoft Center - Kursus Komputer di Solo | 2010 - 2025 | Privacy Policy | Site Map

All Right Reserved

WhatsApp us