6

散布図の回帰線の上と下にある点の数を計算するにはどうすればよいですか?

data = read.csv("info.csv")
par(pty = "s")
plot(data$col1, data$col2, xlab = "xaxis", ylab = "yaxis", xlim = c(0, 
  1), cex.lab = 1.5, cex.axis = 1.5, ylim = c(0, 1), col.lab = "red", 
  col = "blue", pch = 19)
abline(a = -1.21, b = 2.21)
4

2 に答える 2

14
x <- 1:10
set.seed(1)
y <- 2*x+rnorm(10)

plot(y~x)

fit <- lm(y~x)
abline(fit)

resi <- resid(fit)
#below the fit:
sum(resi < 0)
#above the fit:
sum(resi > 0)

編集:( 何らかの理由で)次のようなことをした場合:

x <- 1:10
set.seed(1)
y <- 2*x+rnorm(10)

plot(y~x)
abline(-0.17,2.05)

あなたはこれを行うことができます:

yfit <- 2.05 * x - 0.17
resi <- y - yfit

sum(resi < 0)
sum(resi > 0)
于 2012-10-09T11:58:13.180 に答える
1

質問をきちんと読んでいれば、答えはそうです。

  1. 回帰直線の方程式を決定します。直線であり、y = mx +b の形式になります。ここで、m は直線の傾き、b は y 切片です。
  2. x のドメイン内の各 x の y 値を計算します。
  3. データ内の y の値を使用して、計算された y の値よりも大きいか、等しいか、または小さいかを判断します。

上記を使用するだけで、目的の数値 (カウント) を見つけることができます。

于 2012-10-09T11:59:50.007 に答える