首页 > 解决方案 > R语法含义使用with

问题描述

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

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)

我能否得到这些行中每一行的语义并解释第三行失败的原因?

标签: r

解决方案


你看了吗?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)

失败。


推荐阅读