4

x0 から 2 までの 20 個の値を含むベクトルがあるとします。

x = runif(20, 0, 2)

yここで、次の条件で 0 と 1 のみを含む別のベクトル (バイナリ変数) を作成したいと思います: y = 0ifx < 1およびy = 1in case x > 1

if次の方法でループとステートメントを使用して実行しようとしました。

x = runif(20, 0, 2) # Create a vector of 20 values between 0 and 2
y = rep(5, 20) # Create a vector of 20 values (only 5's)

for(i in 1:length(x)) # Loop that assigns values to the y vector depending on x
{
  if(x < 1)
  {
    y[i] = 0
  }
  else
  {
    y[i] = 1
  }
}

yしかし、残念ながら、私のベクトルには 0 のみが含まれてしまうため、計画どおりには機能しませんでした。私は何を間違えましたか?ありがとうございました :)

4

1 に答える 1