[R] Looking for an easy way to change the names of a vector

arun smartpink111 at yahoo.com
Thu Feb 14 14:40:58 CET 2013


names(Data)[grep(".*\\s+.*",names(Data))]<-gsub("[ ]","-",names(Data)[grep(".*\\s+.*",names(Data))])
#[1] "ada-XXX"    "fsdfs-XXX"  "asd-fd"     "asdsa-XXX"  "dsada-XXX" 
#[6] "asasad-XXX" "adas-asdad" "aasaa-XXX" 


----- Original Message -----
From: Christofer Bogaso <bogaso.christofer at gmail.com>
To: r-help <r-help at r-project.org>
Sent: Thursday, February 14, 2013 6:43 AM
Subject: [R] Looking for an easy way to change the names of a vector

Hello again,

Let say I have following vector (this is basically a snap of very large vector):

Data <- 1:8
names(Data) <- c("ada", "fsdfs", "asd fd", "asdsa", "dsada", "asasad",
"adas asdad", "aasaa")

Now I want to change the names according to following rule:

1. If there is any space then replace that space by "-"
2. Otherwise add "-XXX" at the last to each name

Therefore the names will be:

c("ada-XXX", "fsdfs-XXX", "asd-fd", "asdsa-XXX", "dsada-XXX",
"asasad-XXX", "adas-asdad", "aasaa-XXX")

Can somebody point me some direct way for that?

Thanks for your help

R-help at r-project.org mailing list
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

More information about the R-help mailing list