[R] Troubles with the format of dates
Kathi
kathi at dropnet.ch
Thu Nov 27 16:46:08 CET 2008
Thank you _SO_ much, Petr, you helped me again. That worked like a charm, exactly what I needed!
Cheers,
Kathi
On Thu, 27 Nov 2008 15:01:29 +0100, Petr PIKAL wrote
> Hi
>
> r-help-bounces at r-project.org napsal dne 27.11.2008 14:20:17:
>
> > Dear useRs,
> >
> > I'm struggling again with date-related stuff: I am using R to draw water
>
> > levels at certain measuring
> > stations. My data comes as a tab-delimited text file and looks like
> this:
> >
> > DATUM P1 P2
> > ...
> > 2006-11-16 425.21 423.99
> > 2006-12-15 425.12 423.97
> > 2007-01-16 425.16 424.06
> > ...
> >
> > (measurements started in July 2004 and still continue on a monthly or
> bi-weekly basis)
> >
> > This is then plotted using this code:
> >
> > a<-read.table("dummy_data.tab", sep="\t", header=TRUE, na.strings=c(0))
> > x<-as.Date(a$DATUM)
> >
> > plot(x, a$P1, axes=FALSE, xlim=c(as.Date("2004-07-01"),
> as.Date("2009-01-01")),
> > ylim=c(423,428), col="red", pch=15, type="o", ylab="Kote [m a.s.l.]",
> > main="Dummy Plot")
> > points(x, a$P2, col="red", pch=17, type="o", lty="dotted")
> > axis(2, at=423:428, tck=1, col="gray60")
> > axis.Date(1, at=seq(as.Date("2004-07-01"), as.Date("2009-01-01"),
> > by="month"), labels=seq(as.Date("2004-07-01"), as.Date("2009-01-01"),
> > by="month"), tck=1, col="gray60")
> >
> > So far, I've been using this type of date format (yyyy-mm-dd) because
> that was
> > the only way I could
> > get the whole thing to work when I started using R. However, living in
> > Switzerland, I would prefer
> > the dates to read 16.11.2006 i.e. dd.mm.yyyy or 16. Nov. 2006
> (preferably
> > using German names for
> > the months, if possible).
> >
> > I've used the chron package to convert my dates to day mon year (16 Nov
> 2006,
> > with or without
> > spaces), i.e. I replaced the second line of code with:
> >
> > x<-format(chron(as.character(a$DATUM), format="y-m-d", out.format="day
> mon year"))
>
> Although I am not an expert in time/date functions it seems to me
> that you just want your labels to be in your preferred format. If it
> is the case
>
> labels = format(seq(as.Date("2004-07-01"), as.Date("2009-01-01"),
> by="month"), "%d.%m.%Y")
>
> in your call to axisDate can help you to achieve it.
>
> Regards
> Petr
>
> >
> > but then I can't plot them any more, because as.Date() no longer is the
> > correct function and R gives
> > me an error saying there is an invalid xlim-value. Can someone please
> point me
> > in the right
> > direction?
> >
> > I could easily change the input data to be in dd.mm.yyyy format, if that
> helps.
> >
> > Thanks for your help,
> >
> > Kathi
> >
> >
> > --
> > DropNet AG - Das Unternehmen fuer Ihren Internet-Auftritt!
> >
> > ______________________________________________
> > 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.
--
DropNet AG - Das Unternehmen fuer Ihren Internet-Auftritt!
More information about the R-help
mailing list