2016-12-31 68 views
-1

我有這些列變化和組行標識

ID  X Y 
x1.1 0.1 0.2 
x1.2 0.1 0.2 
x1.3 0.1 0.2 
x2.1 0.3 0.4 
x2.2 0.3 0.4 
x3.1 0.5 0.6 
x3.2 0.5 0.6 
... 0.1 0.2 

數據幀和我想改變所有的ID爲x1.i爲X1,x2.i爲X2,依此類推。所以,我的數據幀應該是這樣的:

ID  X Y 
x1 0.1 0.2 
x1 0.1 0.2 
x1 0.1 0.2 
x2 0.3 0.4 
x2 0.3 0.4 
x3 0.5 0.6 
x3 0.5 0.6 
... ... ... 

我怎麼能做到這一點,而不使用循環?

感謝您提前回復!

回答

1

我們可以使用sub匹配.其次是其他字符(.*)結束的字符串,並與""

df1$ID <- sub("\\..*", "", df1$ID) 
df1 
# ID X Y 
#1 x1 0.1 0.2 
#2 x1 0.1 0.2 
#3 x1 0.1 0.2 
#4 x2 0.3 0.4 
#5 x2 0.3 0.4 
#6 x3 0.5 0.6 
#7 x3 0.5 0.6 
+0

更換@ mgm14392謝謝你的消息。你也可以勾選[here](http://stackoverflow.com/help/someone-answers) – akrun