Re: [R] Renaming column names according to another dataframe

2012-12-26 Thread Heramb Gadgil
try this: colnames(df)<-df_names[1:ncol(df),"name"] On Sun, Dec 23, 2012 at 8:41 PM, radhi wrote: > Hi, I've got a dataframe having a code as column name. Addtionally I have > another dataframe with a two columns (and lots of rows), the first > containing the code and the second some Text (real

Re: [R] Renaming column names according to another dataframe

2012-12-11 Thread arun
HI, You can also try this: df <- data.frame(A=(1:10),B=(1:10),C=(1:10)) df_names <- data.frame(code=c("A","B","D","E","C"),name=c("Col A","Col B","Col D","Col E","Col C")) names(df)<-df_names$name[match(names(df),df_names$code)] A.K. - Original Message - From: Johannes Radinger To: r

Re: [R] Renaming column names according to another dataframe

2012-12-11 Thread arun
HI, Try this:  names(df)<-df_names$name[df_names$code%in%names(df)]  head(df,2) #  Col A Col B Col C #1 1 1 1 #2 2 2 2 A.K. - Original Message - From: Johannes Radinger To: r-help@r-project.org Cc: Sent: Tuesday, December 11, 2012 5:55 AM Subject: [R] Renaming

Re: [R] Renaming column names according to another dataframe

2012-12-11 Thread Johannes Radinger
Hi, thank you so much, that works perfectly. I used the first suggestion by Anthony (names( df ) <- df_names[ match( names( df ) , df_names[ , 'code' ] ) , 'name' ]). Thank you for the hint about ?match... that was the function I was looking for, makes comparing vectors very easy. best, /Johannes

Re: [R] Renaming column names according to another dataframe

2012-12-11 Thread Anthony Damico
df <- data.frame(A=(1:10),B=(1:10),C=(1:10)) # my changes to show that order doesn't matter df_names <- data.frame(code=c("C","A","D","E","B"),name=c("Col C","Col A","Col D","Col E","Col B")) names( df ) <- df_names[ match( names( df ) , df_names[ , 'code' ] ) , 'name' ] for more detail see ?mat