Korelasi dan Kovarians
Korelasi Pearson dan Spearman, matriks kovarians, serta interpretasi korelasi dalam konteks pembelajaran mesin.
Korelasi dan Kovarians adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 4 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.
Mengukur Hubungan
Kovarians dan korelasi mengukur bagaimana dua variabel bergerak bersama. Keduanya menjadi dasar pemilihan fitur, teori portofolio, dan analisis eksploratif.
Kovarians
Kovarians bernilai positif ketika variabel-variabel meningkat bersama, dan negatif ketika salah satunya meningkat sementara yang lain menurun. Besarnya bergantung pada satuan, sehingga kovarians mentah sulit ditafsirkan.
import numpy as np
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 4, 5, 4, 6])
print(np.cov(x, y, ddof=1)) # 2x2 covariance matrixMatriks Kovarians
np.cov mengembalikan sebuah matriks: diagonalnya adalah varians, sedangkan elemen di luar diagonal adalah kovarians antar pasangan. Matriks ini dapat diperluas ke banyak variabel dan menjadi dasar PCA.
data = np.array([[1, 2, 3], [2, 4, 5], [3, 6, 7]], dtype=float)
print(np.cov(data.T)) # 3x3 covariance matrix of the columnsKorelasi: Kovarians yang Diskalakan
Korelasi Pearson menskalakan ulang kovarians ke rentang -1 hingga 1 dengan membaginya dengan hasil kali simpangan baku, sehingga tidak bergantung pada satuan dan dapat dibandingkan.
print(np.corrcoef(x, y)) # 2x2 correlation matrix, diagonal is 1Membaca Korelasi
+1 adalah hubungan LINEAR positif yang sempurna, -1 adalah hubungan negatif yang sempurna, dan 0 berarti tidak ada hubungan LINEAR. Nilai yang mendekati 0 tetap dapat menyembunyikan pola nonLINEAR yang kuat.
Korelasi dalam pandas
df.corr() menghitung korelasi berpasangan di semua kolom numerik sekaligus, cara tercepat untuk memindai hubungan dalam kumpulan data.
import pandas as pd
df = pd.DataFrame({"a": [1,2,3,4,5], "b": [2,4,5,4,6], "c": [9,7,6,5,3]})
print(df.corr()) # Pearson by defaultPearson dibandingkan Spearman
Pearson mengukur hubungan LINEAR pada nilai mentah. Spearman bekerja pada RANKS, sehingga dapat menangkap hubungan monotonik apa pun dan tidak mudah terpengaruh oleh pencilan.
from scipy import stats
x = np.array([1, 2, 3, 4, 100])
y = np.array([1, 2, 3, 4, 5])
print(stats.pearsonr(x, y).statistic) # distorted by outlier
print(stats.spearmanr(x, y).statistic) # 1.0 (perfectly monotonic)Memilih Metode
df.corr(method="spearman") mengubah pandas agar menggunakan korelasi peringkat. Gunakan Spearman jika terdapat pencilan atau hubungan nonlinier tetapi monotonik; gunakan Pearson untuk data linear yang bersih.
print(df.corr(method="spearman"))Korelasi: NOT Kausalitas
Korelasi yang kuat tidak berarti bahwa satu variabel menyebabkan variabel lainnya. Faktor perancu yang tersembunyi mungkin memengaruhi keduanya. Selalu tanyakan apa lagi yang dapat menjelaskan hubungan tersebut.
Korelasi Semu
Jika terdapat cukup banyak variabel, beberapa di antaranya akan berkorelasi hanya karena kebetulan. Penjualan es krim dan kasus tenggelam berkorelasi karena keduanya dipengaruhi oleh panas musim panas, bukan karena saling memengaruhi. Sikapi korelasi yang tidak terduga dengan skeptis.
Memvisualisasikan dengan heatmap
Heatmap korelasi membuat pola lebih mudah terlihat. Pasangan fitur yang berkorelasi kuat mungkin redundan dan dapat dipertimbangkan untuk dihapus sebelum pemodelan.
# import seaborn as sns
# sns.heatmap(df.corr(), annot=True, cmap="coolwarm")Pemeriksaan Singkat
Uji pengetahuan Anda tentang korelasi.
Ringkasan
Perangkat korelasi:
- Kovariansi menunjukkan arah, tetapi bergantung pada satuan;
np.covmenghasilkan matriksnya - Korelasi diskalakan ulang ke rentang -1..1:
np.corrcoef,df.corr() - Pearson (linear) dibandingkan Spearman (peringkat, tangguh, monotonik)
- Korelasi bukan kausalitas; waspadai faktor perancu dan hubungan semu
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Korelasi dan Kovarians” gratis?
Ya — teks lengkap “Korelasi dan Kovarians” 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 “Korelasi dan Kovarians”?
Korelasi Pearson dan Spearman, matriks kovarians, serta interpretasi korelasi dalam konteks pembelajaran mesin. 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 4 dari 4.
Berapa lama pelajaran “Korelasi dan Kovarians” 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
- Statistik Deskriptif dan Distribusi
- Probabilitas dan Teorema Bayes
- Pengujian Hipotesis
- Korelasi dan Kovarians