Cara melakukan interpolasi linier di r (dengan contoh)


Interpolasi linier adalah proses memperkirakan nilai fungsi yang tidak diketahui antara dua nilai yang diketahui.

Diberikan dua nilai yang diketahui (x 1 , y 1 ) dan (x 2 , y 2 ), kita dapat memperkirakan nilai y untuk suatu titik x menggunakan rumus berikut:

kamu = kamu 1 + (xx 1 )(kamu 2 -kamu 1 )/(x 2 -x 1 )

Contoh berikut menunjukkan cara melakukan interpolasi linier di R.

Contoh: interpolasi linier di R

Misalkan kita memiliki bingkai data berikut dengan nilai x dan y di R:

 #define data frame
df <- data. frame (x=c(2, 4, 6, 8, 10, 12, 14, 16, 18, 20),
                 y=c(4, 7, 11, 16, 22, 29, 38, 49, 63, 80))

#view data frame
df

    xy
1 2 4
2 4 7
3 6 11
4 8 16
5 10 22
6 12 29
7 14 38
8 16 49
9 18 63
10 20 80

Kita dapat menggunakan kode berikut untuk membuat scatterplot untuk memvisualisasikan nilai (x,y) dalam bingkai data:

 #create scatterplot
plot(df$x, df$y, col=' blue ', pch= 19 )

Sekarang misalkan kita ingin mencari nilai y yang terkait dengan nilai x baru sebesar 13 .

Kita dapat menggunakan fungsi approx() di R untuk melakukan ini:

 #fit linear regression model using data frame
model <- lm(y ~ x, data = df)

#interpolate y value based on x value of 13
y_new = approx(df$x, df$y, xout= 13 )

#view interpolated y value
y_new

$x
[1] 13

$y
[1] 33.5

Estimasi nilai y ternyata 33,5 .

Jika kita menambahkan titik (13, 33.5) ke plot kita, sepertinya fungsinya cukup cocok:

 #create scatterplot
plot(df$x, df$y, col=' blue ', pch= 19 )

#add the predicted point to the scatterplot
points(13, y_new$y, col=' red ', pch= 19 )

interpolasi linier di R

Kita dapat menggunakan rumus yang tepat ini untuk melakukan interpolasi linier untuk setiap nilai x baru.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:

Cara menyelesaikan sistem persamaan di R
Cara memprediksi nilai dalam R menggunakan model regresi berganda

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *