Hi,
Try:

dat1 <- read.table(text="a     b     c     d       e
1     2     3     4     5
10     9     8     7     6",sep="",header=TRUE)

Names1<- read.table(text="Original      New    
e     ee
b     bb    
a     aa
c     cc
d     dd",sep="",header=TRUE,stringsAsFactors=FALSE)

It is better to dput() your dataset.  For example:
 dput(Names1)
structure(list(Original = c("e", "b", "a", "c", "d"), New = c("ee", 
"bb", "aa", "cc", "dd")), .Names = c("Original", "New"), class = "data.frame", 
row.names = c(NA, 
-5L))


 names(dat1) <- Names1[,2][match(names(dat1), Names1[,1])] ##
 dat1
#  aa bb cc dd ee
#1  1  2  3  4  5
#2 10  9  8  7  6
A.K.





On Thursday, November 21, 2013 1:45 PM, Nitisha jha <nitisha...@gmail.com> 
wrote:

Hi,

Thanks. I used as.character() and got the right strings.

Btw, I have lots of handicaps regarding R.

I have to rename the columns(I have 22 columns here). I have the new names 
along with the original names in another dataset. Right now, I am going 
hardcoding all the  19 name changes(tedious and not optimum). 1st 3 names 
remain the same. I will give u a sample dataset. Let me know if there is any 
easy way of doing this.  Pardon the displaced column labels.



Original dataset. 



   a b c d              
e 
1 2 3 4 5 
10 9 8 7 6 





Dataset for name change 


Original  New 



e ee 



b bb 



a aa 



c cc 



d dd 








I want my final dataset to be like this: 

aa bb cc dd ee 
1 2 3 4 5 
10 9 8 7 6 



 Could u tell me an optimal way to do it. My method is tedious and not good. 

Also, is there a way to import .xls without perl (windows)?


Thanks for being patient. :)

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to