[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
names(df2)
and
names(df_new)
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).
compare
tst.fail<-data.frame(a=1:3,"1a"=1:3,"1b"=1:3)
names(tst.fail)
#and
tst<-data.frame(a=1:3,"1a"=1:3,"1b"=1:3,check.names = F)
names(tst)
this works for me:
tst2<-data.frame(a=1:3,w1=4:6,w3=4:6)
write.csv(merge(tst,tst2),file="testr.csv")
hth.
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