2015-04-22 196 views
1

我有一個數據集,其中所有的變量名都以「。」之前的字符串開頭。我想批量刪除整個數據集。例如:刪除R中所有變量的部分變量名稱

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

我想刪除「。」之前的所有名稱中的所有內容。使得結果變量名稱是「xx」,「zz」,「yy」。感謝任何和所有的想法。

+0

使用'sub'即'子( '^ [^。] *', '',名稱(幀))' – akrun

回答

1

您可以使用sub函數。

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

stringr包中有一個str_replace函數,它將根據正則表達式替換值。您可以使用此弦上之前更換的一切,包括第一期

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