我在 R 中有一个字符类型的变量的小问题。我在数据框中的变量具有如下结构:
X1
ANGLO AUTOMOTRIZ S.A. MATRIZ
AUTOMOTORES Y ANEXOS / AYASA
ECUA - AUTO S.A. MATRIZ
METROCAR S.A. 10 DE AGOSTO
MOSUMI LA "Y"
我的问题是我想要一个没有
./-""
的新变量并且字符串必须组合在一起,没有空格,如下所示:X2
ANGLOAUTOMOTRIZSAMATRIZ
AUTOMOTORESYANEXOSAYASA
ECUAAUTOSAMATRIZ
METROCARSA10DEAGOSTO
MOSUMILAY
可以在 R 中做到这一点。谢谢。
最佳答案
试试 gsub
...
gsub( "\\.|/|\\-|\"|\\s" , "" , df$X1 )
#[1] "ANGLOAUTOMOTRIZSAMATRIZ" "AUTOMOTORESYANEXOSAYASA" "ECUAAUTOSAMATRIZ"
#[4] "METROCARSA10DEAGOSTO" "MOSUMILAY"
\\.
- 匹配文字 .
|
- 或分隔符 /
- 匹配一个 /
(无需转义)\\-
- 匹配文字 -
\"
- 匹配文字 "
\\s
- 匹配一个空格 gsub
是贪婪的,因此尝试尽可能多地匹配,并且它也是矢量化的,因此您可以一次传递整个列。第二个参数是替换值,在本例中为 ""
, 将所有匹配的字符替换为空。
关于regex - 如何删除特殊字符,空格并在一个字符串中修剪R中的字符变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18660424/