Good Day,
I have the following:
>Date<-c("08/05/08","08/06/08","08/07/08")
>Weight<-c(209.4,211.8,210.0)
>planned.meal<-cbind(Date,Weight)
>planned.meal
Date Weight
1 08/05/08, 209.4
2 08/06/08, 211.8
3 08/07/08, 210.0
>write.table(planned.meal, file="plannedMeal1.txt",
+ quote=FALSE, row.names=FALSE)
output on vim editor:
Date Weight
08/05/08, 209.4
08/06/08, 211.8
08/07/08, 210
I'm missing the 210.0 from the data. Instead I got
210 in the file plannedMeal1.txt. I'm using R-2.9.0
Much is appreciated.
Dieter Menne
2009-Jun-25 08:14 UTC
[R] Lose of decimal when using write.table to text file
Bob Ly <robertly <at> vfemail.net> writes:> I have the following: > >Date<-c("08/05/08","08/06/08","08/07/08") > >Weight<-c(209.4,211.8,210.0) > >planned.meal<-cbind(Date,Weight) > >planned.meal > Date Weight > 1 08/05/08, 209.4 > 2 08/06/08, 211.8 > 3 08/07/08, 210.0This is strange. When I run your code, I get> planned.mealDate Weight [1,] "08/05/08" "209.4" [2,] "08/06/08" "211.8" [3,] "08/07/08" "210" This could be a global date format setting, but it show part of the problem: everything is converted to string as the common denominator. Better use a data frame. And (from docs) "For finer control, use format to make a character matrix/data frame, and call write.table on that" Dieter Date<-c("08/05/08","08/06/08","08/07/08") Weight<-c(209.4,211.8,210.0) planned.meal<-cbind(Date,Weight) planned.meal str(planned.meal) planned.meal<-data.frame(Date=Date,Weight=Weight) planned.meal str(planned.meal) options(digits=1) planned.meal.format = format(planned.meal,nsmall=1) planned.meal.format write.table(planned.meal.format, file="plannedMeal1.txt", quote=FALSE, row.names=FALSE)