gpt4 book ai didi

r - 如何从列中的项目中删除字符?

转载 作者:行者123 更新时间:2023-12-04 02:25:43 24 4
gpt4 key购买 nike

我希望能够从我的数据框中的项目中删除特定字符。

Sample <- c("A1.1","B1.1","C1.1","A1.2","B1.2","C1.2")
X <- c(1,1,2,4,3,5)
df <- data.frame(Sample, X)

Sample X
1 A1.1 1
2 B1.1 1
3 C1.1 2
4 A1.2 4
5 B1.2 3
6 C1.2 5

我想从 Sample 列中的每个项目中删除“.1”和“.2”(或第 3 个和第 4 个字符)。

df$Sample <- gsub(".1","",as.character(df$Sample))
df
Sample X
1 1
2 1
3 2
4 .2 4
5 .2 3
6 .2 5

这是我迄今为止尝试过的方法,但没有达到我想要的效果。有没有办法只从 Sample 列中的每个项目中删除第 3 个和第 4 个字符?

最佳答案

代替 .1,将 . 转义为 \\.,因为它是正则表达式中的元字符,可以匹配任何字符。在这里,我们只需要 sub 即匹配一次并替换为空白。下面的模式匹配字符串末尾 ($) 后跟一个或多个数字 (\\d+) 的 .

df$Sample <- sub("\\.\\d+$", "", df$Sample)

关于r - 如何从列中的项目中删除字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67892857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com