R迭代替换for循环和if else

时间:2014-08-05 15:45:30

标签: r loops if-statement for-loop

我是一个新用户,所以请耐心等待。

我有一个数据框dfalpha,有几个变量及其对应的值。类似于:

individual  variable    value
alpha   a   0.2
alpha   b   0.4
alpha   c   0.6
alpha   d   0.8

我有另一个数据框dfbeta,用于其他个人

individual  variable    value
beta    a   0.1
beta    b   0.8
beta    c   0.5
beta    d   0.3

我需要将alpha值(0.2)替换为β值(0.1),然后撤消此替换并将alpha b值(0.4)替换为beta b值(0.8)。其余的等等。

我试过了:

for(i in 1:4){
  if (i = 1) {
    dfalpha$value[i] <- dfbeta$value[i] 
  } else {
    dfalpha$value[i] <- dfbeta$value[i]
    dfalpha$value[i-1] <- dfalphapermanent[i-1]
  } 
  print(dfalpha) 
}

我在循环中有一个dfalphapermant数据框用于撤消替换。为了检查一切正常,我打印结果。 我一直在尝试,但似乎它不起作用。我检查了if和else语句,但它们似乎正确定位。

PS:对于编程风格不对,很抱歉,我很新,并且自学成才。

1 个答案:

答案 0 :(得分:1)

问题是您有声明if (i = 1)i=1始终评估为TRUE,因为它将1分配给i

您想要if (i == 1)