我正在处理一些SurveyMonkey响应数据,这些数据是从.xlsx文件导入的。
正在发生以下事情:
> unique(responseColumn)
[1] "This string"
[2] "Something else"
>(responseColumn == unique(responseColumn)[1])
[1] 25
>sum(responseColumn == "This string")
[1] 0
>unique(responseColumn)[1]
[1] "This string"
>unique(responseColumn)[1] == "This string"
[1] FALSE
显然,这令人困惑。我玩了一段时间,发现可以使用
writeClipboard(unique(responseColumn)[1])
捕获有问题的字符串并将其粘贴到我的代码中。
在控制台中,它看起来完全一样:“此字符串”。
但是,在我的脚本编辑窗口中,它显示为:
我将红点复制到剪贴板并进行了一些测试:
>readClipboard()
[1] " "
>readClipboard() == " "
[1] FALSE
>utf8toInt(" ")
[1] 32
>utf8toInt(readClipboard())
[1] NA
这个神秘人物是什么?我写了Survey Monkey的问题,并且清楚地记得在指定此选项时在键盘上按了“空格”。响应中的其他空格保持不变(实际上,所讨论的响应实际上具有多个IRL空格,只有其中一个已转换为这个神秘字符)。发生了什么事?
答案 0 :(得分:0)
我的猜测是,“红色”点只是一些非ASCII字符,可能是UTF-8字符。在R控制台中看不到它并不意味着它在逻辑上在Windows剪贴板中还不存在。这可能仅表示R控制台无法正确显示UTF-8字符。
如果您的R工具不能正确显示字符,请考虑将其配置为支持UTF-8。