Bagaimana skala pengamatan baru untuk membuat prediksi ketika model itu dilengkapi dengan data berskala?


13

Saya memahami konsep penskalaan matriks data untuk digunakan dalam model regresi linier. Misalnya, dalam R Anda dapat menggunakan:

scaled.data <- scale(data, scale=TRUE)

Satu-satunya pertanyaan saya adalah, untuk pengamatan baru yang ingin saya prediksi nilai outputnya, bagaimana mereka diskalakan dengan benar? Apakah itu , scaled.new <- (new - mean(data)) / std(data)?


1
Untuk mendapatkan nilai kembali lakukan saja y = y_esc * sd(y) + mean(y), tapi itu akan mengacaukan properti model saya kira, jadi saya juga menunggu jawaban yang lebih teknis juga!
— Fernando

Saya tidak ingin nilai kembali, saya ingin tahu bagaimana contoh baru dapat diskalakan dengan cara yang sama. Saya telah mengedit pertanyaan saya berdasarkan komentar Anda.
— SamuelNLP

Jawaban:


13

Jawaban singkat untuk pertanyaan Anda adalah, ya - ekspresi untuk scaled.new benar (kecuali Anda ingin sdbukan std).

Mungkin perlu dicatat bahwa skala memiliki argumen opsional yang dapat Anda gunakan:

scaled.new <- scale(new, center = mean(data), scale = sd(data))

Juga, objek yang dikembalikan oleh skala (scaled.data) memiliki atribut yang memegang pemusatan angka dan skala yang digunakan (jika ada), yang bisa Anda gunakan:

scaled.new <- scale(new, attr(scaled.data, "scaled:center"), attr(scaled.data, "scaled:scale"))

Keuntungan yang muncul ketika data asli memiliki lebih dari satu kolom, sehingga ada beberapa cara dan / atau standar deviasi untuk dipertimbangkan.


Saya berharap ada cara yang sedikit lebih sederhana untuk melakukan ini, sepertiscaled.new <- scale(new, use.attrs = scaled.data)
— kata

@ wordsforthewise Tidak akan sulit untuk menulis pembungkus untuk scale.default untuk mencapai itu. Saya ragu bahwa R-core akan memberikan prioritas tinggi.
— user20637

Ya. Jika saya dapat mengetahui bagaimana berkontribusi pada R-core dan menemukan waktu untuk melakukannya, saya mungkin akan melakukannya.
— kata
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.