【发布时间】:2018-02-06 13:05:39
【问题描述】:
我只是想知道 R 在应用逻辑运算符时如何评估不同的字符。喜欢
"a" > "b"
"b" > "c"
"a+b" > "b+a"
"-" > "+"
"&" > "%"
我只是想知道R如何按升序或降序排列不同的符号和字符?对于上面定义的每个操作,我先前的信念是“NA”。但是 R 对于每种情况都返回 TRUE 或 FALSE。
【问题讨论】:
标签: r logical-operators
我只是想知道 R 在应用逻辑运算符时如何评估不同的字符。喜欢
"a" > "b"
"b" > "c"
"a+b" > "b+a"
"-" > "+"
"&" > "%"
我只是想知道R如何按升序或降序排列不同的符号和字符?对于上面定义的每个操作,我先前的信念是“NA”。但是 R 对于每种情况都返回 TRUE 或 FALSE。
【问题讨论】:
标签: r logical-operators
查看比较帮助页面?Comparison
引用关键段落:
字符向量中字符串的比较是使用所用语言环境的整理顺序在字符串中按字典顺序进行的:请参阅语言环境。诸如 en_US 之类的语言环境的整理顺序通常与 C(应该使用 ASCII)不同,并且可能令人惊讶。谨防对整理顺序做出任何假设:例如在爱沙尼亚语中,Z 位于 S 和 T 之间,排序不一定是逐个字符的——在丹麦语中,aa 排序为单个字母,在 z 之后。在威尔士语中,ng 可能是也可能不是单个排序单元:如果是,则遵循 g。某些平台可能不尊重语言环境,并且总是在 8 位语言环境中按字节的数字顺序排序,或者在 UTF-8 语言环境中按 Unicode 代码点顺序排序(并且对于相同的语言,在不同的字符集)。非字母(空格、标点符号、连字符、分数等)的整理更成问题。
【讨论】:
您可以通过显式请求 char 或字符串值列表的顺序来解决这个难题...
items <- c('+','-','a','z', 'A', 'a+b', 'a+x', '*', '/')
items[order(items)]
【讨论】:
sort可以下单。
sort(c(letters, LETTERS, 0:9, "+", "\"", "¦", "@", "*", "#", "ç", "%", "&", "¬", "|",
"(", "¢", ")", "=", "?", "'", "´", "`", "^", "~", "!", "[", "]", "$", "£", "{", "}",
".", ",", "-", "_", "<", ">", "/"))
【讨论】: