[R] Maintaining Column names while writing csv file.

Eik Vettorazzi E.Vettorazzi at uke.de
Thu Jul 19 10:03:45 CEST 2012

Hi Vincy,
have you checked




because by default 'data.frame' checks the column names "to ensure that
they are syntactically valid variable names" and 1w and 2w aren't, so an
X is prepended (see ?data.frame and ?make.names).


tst<-data.frame(a=1:3,"1a"=1:3,"1b"=1:3,check.names = F)

this works for me:



Am 19.07.2012 08:55, schrieb Vincy Pyne:
> Dear R helpers,
> I have one trivial problem while writing an output file in csv format.
> I have two dataframes say df1 and df2 which I am reading from two different csv files. 
> df1 has column names as date, r1, r2, r3 while the dataframe df2 has column names as date, 1w, 2w. 
> (the dates in both the date frames are identical also no of elements in each column are equal say = 10).
> I merge these dataframes as
> df_new = merge(df1, df2, by = "date", all = T) 
> So my new data frame has columns as 
> date, r1, r2, r3, 1w, 2w
> However, if I try to write this new dataframe as a csv file as
> write.csv(data.frame(df_new), 'df_new.csv', row.names = FALSE)
> The file gets written, but when I open the csv file, the column names displayed are as
> date, r1, r2, r3, X1w, X2w
> My original output file has about 200 columns so it is not possible to write column names individually. Also, I can't change the column names since I am receiving these files from external source and need to maintain the column names.
> Kindly guide
> Regards
> Vincy
> 	[[alternative HTML version deleted]]
> ______________________________________________
> R-help at 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.

Eik Vettorazzi

Department of Medical Biometry and Epidemiology
University Medical Center Hamburg-Eppendorf

Martinistr. 52
20246 Hamburg

T ++49/40/7410-58243
F ++49/40/7410-57790

Pflichtangaben gemäß Gesetz über elektronische Handelsregister und Genossenschaftsregister sowie das Unternehmensregister (EHUG):

Universitätsklinikum Hamburg-Eppendorf; Körperschaft des öffentlichen Rechts; Gerichtsstand: Hamburg

Vorstandsmitglieder: Prof. Dr. Guido Sauter (Vertreter des Vorsitzenden), Dr. Alexander Kirstein, Joachim Prölß, Prof. Dr. Dr. Uwe Koch-Gromus 

More information about the R-help mailing list