热线电话:13121318867

登录
2018-11-02 阅读量: 824
使用filter()函数比较运算符

为了有效地进行筛选,你必须知道如何使用比较运算符来选择观测。 R 提供了一套标准的

比较运算符: >、 >=、 <、 <=、 !=(不等于)和 ==(等于)。

当开始使用 R 时,最容易犯的错误就是使用 = 而不是 == 来测试是否相等。当出现这种情

况时,你会收到一条有启发性的错误消息:

filter(flights, month = 1)
#> Error: filter() takes unnamed arguments. Do you need `==`?

在使用 == 进行比较时,你可能还会遇到另一个常见问题:浮点数。下面的结果可能会令

你目瞪口呆:

sqrt(2) ^ 2 == 2
#> [1] FALSE
1/49 * 49 == 1
#> [1] FALSE

计算机使用的是有限精度运算(显然无法存储无限位的数),因此请记住,你看到的每个

数都是一个近似值。比较浮点数是否相等时,不能使用 ==,而应该使用 near():

near(sqrt(2) ^ 2, 2)
#> [1] TRUE
near(1 / 49 * 49, 1)
#> [1] TRUE

43.7056
2
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子