我刚开始学习R,在我的第一个作业中,我遇到一个问题,我需要比较一堆变量,而这样做的时候,我不但要比较两个变量(不相等,而且要比较类型)时也会得到假不一样。例如 :
7 == "7"
Run Code Online (Sandbox Code Playgroud)
给出正确的,应该是错误的。目前,我正在执行以下操作:
var1 = 8 == "8"
var2 = typeof(8) == typeof("8")
var1 & var2
Run Code Online (Sandbox Code Playgroud)
我想应该有一些更简单的方法。就像我们将数字添加到字符向量时一样,它隐式地将7转换为“ 7”。那么有没有办法在1行中获得相同的结果?
从?Comparison帮助页面:
如果两个参数是不同类型的原子向量,则一个被强制转换为另一个类型,优先级的(降序)顺序为字符,复杂,数字,整数,逻辑和原始。
在同一帮助页面上,作者警告在-expressions中使用==和!=进行测试if。他们建议identical()改为使用:
7 == "7"
# TRUE
identical(7, "7")
# FALSE
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |