我有一个数据框,其中每一行都有一个我想删除的模式。 我的数据框看起来像;
Singer Name Song Name
1 SEP>Karkkiautomaatti SEP>Tanssi vaan
2 SEP>Hudson Mohawke SEP>No One Could Ever
如上所示,每一行都有一个我想删除的模式“SEP>”。我尝试过使用“gsub()”和“apply()”函数,但无法成功删除此模式。我想要这个数据框,
Singer Name Song Name
1 Karkkiautomaatti Tanssi vaan
2 Hudson Mohawke No One Could Ever
一个选项是使用
lapply
循环遍历列,使用 sub
删除子字符串“SEP>”
df1[] <- lapply(df1, function(x) sub("SEP>", "", x, fixed = TRUE))
您还可以使用
substr()
:
lapply(df, function(x) substr(x, 5, nchar(x)))
Singer_Name Song_Name
1 Karkkiautomaatti Tanssi vaan
2 Hudson Mohawke No One Could Ever
与
dplyr
结合:
df %>%
mutate_all(list(~ substr(., 5, nchar(.))))