我有一段数据框:
1 137 411 NA
2 45.7 (13.38) 45.4 (13.15) NA
3 NA
4 37<U+2007><U+2007>27.0% 135<U+2007><U+2007>32.8% NA
5 100<U+2007><U+2007>73.0% 276<U+2007><U+2007>67.2% NA
我想删除一些unicode空格:
adf <- apply(adf, 2, function(x) gsub("<U\\+2007>", "", x))
但这显然是有效的。在控制台中打印有两个空格而不是U2007并在转换后:
adf <- as.data.frame(adf[,colSums(is.na(adf)) < nrow(adf)], stringsAsFactors = F, check.names = F)
这些unicode字符在文本中就像在开头一样。
如何将它们更改为真实空间或摆脱?
我已经检查了类似线程中的一些模式,但这也不起作用:
adf <- apply(adf, 2, function(x) gsub("[<].*[>]", " ", x))
修改
我已经找到了这个问题的解决方案:Remove unicode <+f0b7> from Corpus text
gsub(sprintf("(*UCP)(%s)", paste("\U2007", collapse = "|")), " ", x, perl = TRUE)
这可能适用于更多Unicode字符。我的数据是使用UTF-8
编码从网站加载的。我希望上面的陈述适用于更多的灌木丛&#39;在html
空间的单词之间生长。