删除R中所有变量的变量名称的一部分

时间:2015-04-22 17:25:44

标签: r string variables

我有一个数据集,其中所有变量名称都以"之前的字符串开头。"我想为整个数据集批量删除。例如:

frame <- data.frame("sec.xx" = rnorm(10), "sec2.zz" = rnorm(10), "sec3.yy" = rnorm(10))
names(frame)

我想在&#34;之前删除所有名称中的所有内容。&#34;这样得到的变量名称是&#34; xx&#34;,&#34; zz&#34;,&#34; yy&#34;。感谢您的所有想法。

2 个答案:

答案 0 :(得分:2)

stringr包有一个str_replace函数,它将根据正则表达式替换值。您可以在字符串上使用它来替换第一个句点之前的所有内容

a = "sec.xx"
a = str_replace(a, ".*\\.", "")

答案 1 :(得分:1)

您可以使用sub功能。

> names(frame) <- sub(".*\\.", "", names(frame))
> names(frame)
[1] "xx" "zz" "yy"