我试图在数据框中为列中的所有值重新排序字符串。
我有以下价值观:
F123/1K
F234/2Q
F678/8W
我希望它看起来像:
K1231
Q2342
W6788
有没有办法一次性更改所有字符串,而不是在循环中单独执行每个字符串的原始方式?
非常感谢任何协助。
答案 0 :(得分:2)
我们可以使用sub
将模式捕获为一个组,然后重新安排替换中捕获的组的反向引用
sub("^.(.{3}).(.)(.)", "\\3\\1\\2", df1$col)
#[1] "K1231" "Q2342" "W6788"
df1 <- structure(list(col = c("F123/1K", "F234/2Q", "F678/8W")),
.Names = "col", class = "data.frame", row.names = c(NA, -3L))