R语法含义与with一起使用

时间:2018-08-03 00:52:35

标签: r

大家好,以下两行代码给了我想要的结果

missing=with(pima,glucose==0|diastolic==0|triceps==0|bmi==0)
missing=with(pima,missing<-glucose==0|diastolic==0|triceps==0|bmi==0)

但是第三行失败

missing=with(pima,missing=glucose==0|diastolic==0|triceps==0|bmi==0)

我能否获得每行的语义以及第三行为何失败的解释?

1 个答案:

答案 0 :(得分:0)

您是否看过?with;那里的解释似乎很好。让我们以mtcars为例。

案例1

with(mtcars, cyl == 4 | am == 1)

返回当前环境中的逻辑矢量。

案例2

with(mtcars, var <- cyl == 4 | am == 1)

返回逻辑向量,并将该向量存储在由mtcars构造的本地环境中。

来自?with

  

请注意,“ expr”中的分配是在        环境,而不是用户的工作空间中。

案例3

with(mtcars, var = cyl == 4 | am == 1)

with尝试评估var = (cyl == 4 | am == 1)失败,因为

eval(mtcars$var = mtcars$cyl == 4 | mtcars$am == 1)

失败。