R で線形補間を実行する方法 (例あり)


線形補間は、 2 つの既知の値の間の関数の未知の値を推定するプロセスです。

2 つの既知の値 (x 1 , y 1 ) と (x 2 , y 2 ) が与えられると、次の式を使用して点 x の y 値を推定できます。

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

次の例は、R で線形補間を実行する方法を示しています。

例: R での線形補間

R に x 値と y 値を持つ次のデータ フレームがあるとします。

 #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

次のコードを使用して散布図を作成し、データ フレーム内の (x,y) 値を視覚化できます。

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

ここで、新しい x 値13に関連付けられた y 値を見つけたいとします。

これを行うには、R の近似()関数を使用できます。

 #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

推定された y 値は33.5であることがわかります。

点 (13, 33.5) をプロットに追加すると、関数とよく一致しているように見えます。

 #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 )

R の線形補間

この正確な式を使用して、新しい x 値に対して線形補間を実行できます。

追加リソース

次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。

R で連立方程式を解く方法
重回帰モデルを使用して R の値を予測する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です