标签: gsub

在R中的一个gsub()或chartr()语句中替换多个字符串?

我有一个包含字母[az],空格[]和撇号[']的字符串变量,例如.x <- "a'b c" 我想用blank []替换撇号['],并用下划线[_]替换space [].

x <- gsub("'", "", x)
x <- gsub(" ", "_", x)
Run Code Online (Sandbox Code Playgroud)

它绝对有效,但是当我有很多条件时,代码变得丑陋.因此,我想使用chartr(),但chartr()不能处理空白,例如.

x <- chartr("' ", "_", x) 
#Error in chartr("' ", "_", "a'b c") : 'old' is longer than 'new'
Run Code Online (Sandbox Code Playgroud)

有什么方法可以解决这个问题吗?谢谢!

string r gsub

13
推荐指数
5
解决办法
2万
查看次数

使用Ruby gsub转义linux路径名中的空格

我试图逃避Linux路径中的空间.但是,每当我试图逃避反斜杠时,我最终会得到一个双斜线.

示例路径:

/mnt/drive/site/usa/1201 East/1201 East Invoice.pdf
Run Code Online (Sandbox Code Playgroud)

所以我可以在Linux中使用它我想逃避它:

/mnt/drive/site/usa/1201\ East/1201\ East\ Invoice.pdf
Run Code Online (Sandbox Code Playgroud)

所以我正在尝试这个:

backup_item.gsub("\s", "\\\s")
Run Code Online (Sandbox Code Playgroud)

但是我得到了意想不到的输出

/mnt/drive/site/usa/1201\\ East/1201\\ East\\ Invoice.pdf
Run Code Online (Sandbox Code Playgroud)

ruby gsub

12
推荐指数
2
解决办法
8595
查看次数

R从字符串中提取第一个数字

我在变量中有一个字符串,我们称之为v1.该字符串表示图片编号,采用"Pic 27 + 28"的形式.我想提取第一个数字并将其存储在一个名为item的新变量中.

我尝试过的一些代码是:

item <- unique(na.omit(as.numeric(unlist(strsplit(unlist(v1),"[^0-9]+")))))
Run Code Online (Sandbox Code Playgroud)

这很好,直到我找到了一个列表:

[1,] "Pic 26 + 25"
[2,] "Pic 27 + 28"
[3,] "Pic 28 + 27"
[4,] "Pic 29 + 30"
[5,] "Pic 30 + 29"
[6,] "Pic 31 + 32"
Run Code Online (Sandbox Code Playgroud)

在这一点上,我获得了比我想要的更多的数字,因为它也抓住了其他唯一的数字(25).

我实际上尝试过使用gsub,但没有任何工作.帮助将非常感激!

regex r gsub strsplit

12
推荐指数
3
解决办法
1万
查看次数

从R中的字母数字字符中删除前导零

我有一个d带字母数字字符的字符向量

d <- c("012309 template", "separate 00340", "00045", "890 098", "3405 garage", "matter00908")

d
[1] "012309 template" "separate 00340"  "00045"           "890 098"         "3405 garage"     "matter00908"  
Run Code Online (Sandbox Code Playgroud)

如何从R中的所有数字中删除前导零? as.numeric将仅在数字或整数向量中删除所有前导零.我尝试过gsub,regex但无法获得理想的结果.

预期输出如下

out <- c("12309 template", "seperate 340", "45", "890 98", "3405 garage", "matter908")
out
[1] "12309 template" "seperate 340"   "45"             "890 98"         "3405 garage"    "matter908"  
Run Code Online (Sandbox Code Playgroud)

regex string r character gsub

12
推荐指数
2
解决办法
2万
查看次数

将gsub应用于各种列

应用于gsub各种列的最有效方法是什么?以下不起作用

x1=c("10%","20%","30%")
x2=c("60%","50%","40%")
x3 = c(1,2,3)
x = data.frame(x1,x2,x3)
per_col = c(1,2)
x = gsub("%","",x[,per_col])
Run Code Online (Sandbox Code Playgroud)

如何最有效地删除指定列中的"%"符号.我可以将它应用于整个数据框吗?在我不知道列百分比在哪里的情况下,这将非常有用.

r gsub dataframe

12
推荐指数
2
解决办法
2万
查看次数

gsub中有9个以上的反向引用()

如何使用gsub超过9个反向引用?我希望下面例子中的输出是"e,g,i,j,o".

> test <- "abcdefghijklmnop"
> gsub("(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)(\\w)", "\\5, \\7, \\9, \\10, \\15", test, perl = TRUE)
[1] "e, g, i, a0, a5"
Run Code Online (Sandbox Code Playgroud)

regex r gsub

11
推荐指数
1
解决办法
3556
查看次数

Ruby中有正则表达式删除吗?

使用正则表达式的所有字符串删除都使用gsub,是否有更短的方法? string.gsub(/\A.*\//,'')

ruby regex string gsub ruby-1.9

11
推荐指数
2
解决办法
5413
查看次数

从R中的整个数据框中删除空白

我一直在尝试删除数据框中的空白区域(使用R).数据框很大(> 1gb),并且有多个列,每个数据条目中都包含空格.

有没有快速的方法从整个数据框中删除空白?我一直在尝试使用以下方法对前10行数据的子集执行此操作:

gsub( " ", "", mydata) 
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用,虽然R返回了我无法解释的输出.

str_replace( " ", "", mydata)
Run Code Online (Sandbox Code Playgroud)

R返回了47个警告并且没有移除空白区域.

erase_all(mydata, " ")
Run Code Online (Sandbox Code Playgroud)

R返回错误,说"错误:找不到功能"erase_all"'

我真的很感激一些帮助,因为我花了最后24小时试图解决这个问题.

谢谢!

whitespace replace r gsub

11
推荐指数
6
解决办法
5万
查看次数

在R中替换第一次出现的":"而不是第二次

为了能够处理我想要替换:字符串中的第一个匹配项(这是我的标记,语音开始).

text <- c("Mr. Mark Francois (Rayleigh) (Con): If the scheme was so poorly targeted, why were the Government about to roll it out to employees in the Department of Trade and Industry and the Department for Work and Pensions on the very day the Treasury scrapped it? The CBI and the TUC have endorsed the scheme, which has helped 500,000 people and their families to improve their computer skills. When the Chancellor announced the original concession, he …
Run Code Online (Sandbox Code Playgroud)

regex r gsub lapply

11
推荐指数
1
解决办法
7147
查看次数

gsub只是模式的一部分

我想使用gsub来更正我的数据中的一些名称.我希望诸如"RJ"和"AJ"之类的名字在字母之间没有空格.

例如:

x <- "A. J. Burnett"
Run Code Online (Sandbox Code Playgroud)

我想使用gsub匹配他的名字的模式,然后删除空格:

gsub("[A-Z]\\.\\s[A-Z]\\.", "[A-Z]\\.[A-Z]\\.", x)
Run Code Online (Sandbox Code Playgroud)

但我得到:

[1] "[A-Z].[A-Z]. Burnett"
Run Code Online (Sandbox Code Playgroud)

显然,不是[AZ],而是我想要原始名称中的实际字母.我怎样才能做到这一点?

string r gsub

11
推荐指数
1
解决办法
4992
查看次数

标签 统计

gsub ×10

r ×8

regex ×5

string ×4

ruby ×2

character ×1

dataframe ×1

lapply ×1

replace ×1

ruby-1.9 ×1

strsplit ×1

whitespace ×1