我只是想知道当应用逻辑运算符时如何评估不同的字符。喜欢
"a" > "b"
"b" > "c"
"a+b" > "b+a"
"-" > "+"
"&" > "%"
我只是想知道R如何在上升或降序中安排不同的符号和字符?我先前的信念是上面定义的每个操作的" NA"。但是R返回每种情况的真实或错误。
请参阅"帮助"页面以获取比较?Comparison
引用密钥段:
字符矢量中字符串的比较是使用使用的语言环境的整理序列在字符串中的词典学:请参见LATERES。诸如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, "+", """, "¦", "@", "*", "#", "ç", "%", "&", "¬", "|",
"(", "¢", ")", "=", "?", "'", "´", "`", "^", "~", "!", "[", "]", "$", "£", "{", "}",
".", ",", "-", "_", "<", ">", "/"))