Anda di halaman 1dari 4

Linear regression in DAX

DAX, yang berasal dari Power Pivot, berbagi banyak fungsi dengan Excel. Pada 2017, beberapa fungsi,
seperti SLOPE dan INTERCEPT, ada di yang terakhir tetapi tidak di yang pertama. Kedua fungsi
tersebut dapat digunakan untuk analisis regresi linier sederhana

LINESTX sekarang digunakan untuk menghitung kemiringan dan intersep. Perhatikan bahwa LINEST
dan LINESTX memungkinkan Anda untuk melakukan regresi linier ganda juga!

Bagaimana saya bisa menggunakan regresi linier sederhana?

Dengan regresi linier sederhana, Anda dapat memperkirakan hubungan kuantitatif antara dua
variabel. Katakanlah Anda memiliki model data berikut:

Name Height (cm) Weight (kg)

Harry 166 54

Hermione 164 51

Ron 173 73

Ginny 171 55

Dumbledore 181

Perhatikan bagaimana berat Dumbledore tidak diketahui — kita akan memprediksinya dengan
regresi linier sederhana.

Pola regresi linier sederhana

Regresi linier sederhana dapat dilakukan hanya dalam satu ukuran:

Simple linear regression =


VAR Known
= FILTER (
SELECTCOLUMNS (
ALLSELECTED ( Table[Column]
), "Known[X]", [Measure X],
"Known[Y]", [Measure Y]
),
AND (
NOT ( ISBLANK ( Known[X] )
), NOT ( ISBLANK ( Known[Y]
))
)
)
VAR SlopeIntercept =
LINESTX(Known, Known[Y],
Known[X]) VAR Slope =
SELECTCOLUMNS(SlopeIntercept, [Slope1])
VAR Intercept =
SELECTCOLUMNS(SlopeIntercept,
[Intercept]) RETURN
Intercept + Slope * [Measure X]

Untuk membuatnya bekerja untuk Anda, ganti

1. Bagian merah dengan referensi kolom nilai kategori Anda

2. Bagian hijau dengan ukuran nilai independen Anda (dua kali)

3. Bagian biru dengan ukuran nilai dependen Anda

Memperkirakan berat Dumbledore

Sekarang kita dapat memperkirakan berat Dumbledore dan, dengan sedikit lebih banyak DAX, buat
grafik berikut:
Perhatikan bagaimana kami menampilkan nilai bobot yang diketahui saat berat diketahui, tetapi kami
menampilkan estimasi bobot jika berat tidak diketahui.

Cara lain untuk menggunakan pola

Anda tidak terbatas untuk menggunakan ukuran untuk nilai X dan Y yang diketahui — Anda juga
dapat menggunakan kolom, berkat konteks baris yang ada di SELECTCOLUMNS. Misalnya, untuk
memperkirakan penjualan di masa mendatang, Anda dapat menggunakan tanggal sebagai pengganti
Ukuran X, seperti:

Simple linear regression = VAR Known =


FILTER (
SELECTCOLUMNS ( ALLSELECTED ( 'Date'[Date] ),
"Known[X]", 'Date'[Date], "Known[Y]", [Measure Y]
),
AND (
NOT ( ISBLANK ( Known[X] ) ), NOT ( ISBLANK ( Known[Y] ) )
)
)
VAR SlopeIntercept =
LINESTX(Known, Known[Y], Known[X]) VAR Slope =
SELECTCOLUMNS(SlopeIntercept, [Slope1]) VAR Intercept =
SELECTCOLUMNS(SlopeIntercept, [Intercept]) RETURN
SUMX (
DISTINCT ( 'Date'[Date] ),
Intercept + Slope * 'Date'[Date]
)

Perhatikan bahwa untuk menampilkan jumlah yang benar pada tingkat total keseluruhan, Anda
juga perlu mengubah ekspresi RETURN. Dalam hal penjualan, adalah tepat untuk menggunakan
SUMX; jika Anda berurusan dengan suhu, misalnya, Anda mungkin akan menggunakan AVERAGEX.

Anda kemudian dapat membuat grafik berikut:


Garis merah sangat mirip dengan garis tren, bukan? Bahkan, jika Anda menambahkan garis tren ke
grafik, itu akan persis sama dengan garis merah:

Setidaknya ada dua alasan untuk mempertimbangkan garis tren yang dihitung:

1. Dengan garis tren bawaan, Anda hanya dapat menyimpulkan nilainya dari sumbu Y,
sedangkan garis tren terhitung memungkinkan Anda melihat nilainya secara
eksplisit

2. Mulai September 2017, Power BI memungkinkan Anda hanya menambahkan garis tren
untuk sumbu numerik atau datetime. Segera setelah Anda menggunakan string (nama bulan,
misalnya), Anda kehilangan kemampuan untuk menambahkan garis tren. Dengan regresi
linier sederhana, Anda dapat menghitungnya sendiri, selama Anda memiliki nilai numerik
berurutan untuk digunakan sebagai nilai X yang diketahui

Anda mungkin juga menyukai