R 和 Excel:Space 这不是常见的 space 在 R 中给出
R and Excel: Space which is not a common space gives in R
我有一个 Excel sheet 的列,其中一些条目在字符串的末尾包含 space。例如:“SS”和“SS”,最后用space。这仅在我单击单元格时可见。当我尝试使用 space 栏替换 space 和 "" 和 ctrl+h 时,它没有找到 space。显然,这不是一个常见的space。我试图在其他地方插入一个常见的 space(带有 space 栏),我可以找到这个 (space-bar)-space。所以,我假设它是一个特殊的space。如果我复制该单元格中的 space 并将其与 ctrl+h 一起使用,那么我可以将其替换为“”。
当我在替换之前将 Excel sheet 导入 R(使用 ess-emacs)时,我得到以下条目:
下划线不是普通的下划线,不能用sub
替换成“”。现在,我想知道这个 space 是什么以及我如何在 R 中处理这个问题(即删除这个 space/underscore)。
我不能保证这会起作用(因为 Unicode 等处理可能因平台而异),但 ?trimws
建议使用 whitespace = "[\h\v]"
会起作用:
> z <- data.frame(1:2,2:3)
> names(z) <- c("a ","b\u00a0") ## column name with Unicode space
> z
a b
1 1 2
2 2 3
> names(z)
[1] "a " "b "
> trimws(names(z)) ## default doesn't remove space after 'b'
[1] "a" "b "
> trimws(names(z), whitespace="[\h\v]")
[1] "a" "b"
我有一个 Excel sheet 的列,其中一些条目在字符串的末尾包含 space。例如:“SS”和“SS”,最后用space。这仅在我单击单元格时可见。当我尝试使用 space 栏替换 space 和 "" 和 ctrl+h 时,它没有找到 space。显然,这不是一个常见的space。我试图在其他地方插入一个常见的 space(带有 space 栏),我可以找到这个 (space-bar)-space。所以,我假设它是一个特殊的space。如果我复制该单元格中的 space 并将其与 ctrl+h 一起使用,那么我可以将其替换为“”。
当我在替换之前将 Excel sheet 导入 R(使用 ess-emacs)时,我得到以下条目:
下划线不是普通的下划线,不能用sub
替换成“”。现在,我想知道这个 space 是什么以及我如何在 R 中处理这个问题(即删除这个 space/underscore)。
我不能保证这会起作用(因为 Unicode 等处理可能因平台而异),但 ?trimws
建议使用 whitespace = "[\h\v]"
会起作用:
> z <- data.frame(1:2,2:3)
> names(z) <- c("a ","b\u00a0") ## column name with Unicode space
> z
a b
1 1 2
2 2 3
> names(z)
[1] "a " "b "
> trimws(names(z)) ## default doesn't remove space after 'b'
[1] "a" "b "
> trimws(names(z), whitespace="[\h\v]")
[1] "a" "b"