gpt4 book ai didi

r - 为什么数字变量和字符变量之间的比较不会给出警告?

转载 作者:行者123 更新时间:2023-12-03 21:34:53 25 4
gpt4 key购买 nike

我的代码中有一个错误,这是由于字符变量和数字变量(它们都应该是数字)之间的无意比较造成的。如果 R 在进行此类比较时有警告,则该错误会更容易找到。例如,为什么这不会引发警告

> 'two' < 5
[1] FALSE

但这确实会发出警告
> as.numeric('two') < 5
[1] NA
Warning message:
NAs introduced by coercion

我不清楚第一次比较中幕后发生了什么?

最佳答案

在您的示例中 5转换为字符,所以测试与'two' < as.character(5)相同.

来自 ?Comparison :

If the two arguments are atomic vectors of different types, one is coerced to the type of the other, the (decreasing) order of precedence being character, complex, numeric, integer, logical and raw.

关于r - 为什么数字变量和字符变量之间的比较不会给出警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37134174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com