Re: [R] question about formatting Dates

2012-06-27 Thread arun
Hi,

I can see the mistake in the code as "$" before Y.  

 dat1<-as.factor(c("1/2/2011","1/4/2011","1/4/2011"))


dat1
[1] 1/2/2011 1/4/2011 1/4/2011
Levels: 1/2/2011 1/4/2011
 as.Date(as.character(dat1), "%m/%d/%Y")
[1] "2011-01-02" "2011-01-04" "2011-01-04"
> as.Date(as.character(dat1),"%m/%d/$Y")
[1] NA NA NA

A.K.



- Original Message -
From: Erin Hodgess 
To: R help 
Cc: 
Sent: Tuesday, June 26, 2012 11:54 PM
Subject: [R]  question about formatting Dates

Dear R People:

I have dates as factors in the following:

> poudel.df$DATE
[1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011  1/8/2011
[8] 1/9/2011  1/10/2011
Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011
>

I want them to be "regular" dates which can be sorted, etc.

But when I did this:

> as.character(poudel.df$DATE)
[1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"  "1/7/2011"
[7] "1/8/2011"  "1/9/2011"  "1/10/2011"

and
> as.Date(as.character(poudel.df$DATE),"%m/%d/$Y")
[1] NA NA NA NA NA NA NA NA NA

because the dates do not have leading zeros.

There are approximately 30 years of nearly daily data in the entire set.

Any suggestions would be much appreciated.

Sincerely,
Erin


-- 
Erin Hodgess
Associate Professor
Department of Computer and Mathematical Sciences
University of Houston - Downtown
mailto: erinm.hodg...@gmail.com

__
R-help@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.


__
R-help@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.


Re: [R] question about formatting Dates

2012-06-27 Thread David L Carlson
How about

> dates <- as.factor(c("1/2/2011", "1/4/2011", "1/4/2011", "1/4/2011",
"1/6/2011", "1/7/2011", "1/8/2011", "1/9/2011", "1/10/2011"))
> dates
[1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011  1/8/2011 
[8] 1/9/2011  1/10/2011
Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011

> format(as.Date(dates, "%m/%d/%Y"), "%m/%d/%Y")
[1] "01/02/2011" "01/04/2011" "01/04/2011" "01/04/2011" "01/06/2011"
[6] "01/07/2011" "01/08/2011" "01/09/2011" "01/10/2011"


--
David L Carlson
Associate Professor of Anthropology
Texas A&M University
College Station, TX 77843-4352

> -Original Message-
> From: r-help-boun...@r-project.org [mailto:r-help-bounces@r-
> project.org] On Behalf Of Erin Hodgess
> Sent: Tuesday, June 26, 2012 10:54 PM
> To: R help
> Subject: [R] question about formatting Dates
> 
> Dear R People:
> 
> I have dates as factors in the following:
> 
> > poudel.df$DATE
> [1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011
> 1/8/2011
> [8] 1/9/2011  1/10/2011
> Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011
> >
> 
> I want them to be "regular" dates which can be sorted, etc.
> 
> But when I did this:
> 
> > as.character(poudel.df$DATE)
> [1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"
> "1/7/2011"
> [7] "1/8/2011"  "1/9/2011"  "1/10/2011"
> 
> and
> > as.Date(as.character(poudel.df$DATE),"%m/%d/$Y")
> [1] NA NA NA NA NA NA NA NA NA
> 
> because the dates do not have leading zeros.
> 
> There are approximately 30 years of nearly daily data in the entire
> set.
> 
> Any suggestions would be much appreciated.
> 
> Sincerely,
> Erin
> 
> 
> --
> Erin Hodgess
> Associate Professor
> Department of Computer and Mathematical Sciences
> University of Houston - Downtown
> mailto: erinm.hodg...@gmail.com
> 
> __
> R-help@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.

__
R-help@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.


Re: [R] question about formatting Dates

2012-06-27 Thread Rui Barradas

Hello,

I'm afraid you're wrong, this has nothing to do with leading zeros. Just 
see:


x <- c("1/2/2011",  "1/4/2011",  "1/4/2011",  "1/4/2011",  "1/6/2011", 
"1/7/2011",

"1/8/2011",  "1/9/2011",  "1/10/2011")
as.Date(x, "%m/%d/%Y")

y <- factor(x)
str(y)
as.Date(as.character(y), "%m/%d/%Y")


Note that the correct way of transforming factors into their levels is 
to index the levels by the factor's values (which are always positive 
integers):


levels(y)[y]
[1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"  "1/7/2011"
[7] "1/8/2011"  "1/9/2011"  "1/10/2011"


Also, if those dates come from a file, maybe you want to read.table or 
read.csv with the option


stringsAsFactors = FALSE

and avoid the problem altogether. This has the side effect that all 
character variables will be read in as character variables and some 
might be categorical. What an ugly sentence! So this option must be used 
with caution.


Hope this helps,

Rui Barradas

Em 27-06-2012 04:54, Erin Hodgess escreveu:

Dear R People:

I have dates as factors in the following:


poudel.df$DATE

[1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011  1/8/2011
[8] 1/9/2011  1/10/2011
Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011



I want them to be "regular" dates which can be sorted, etc.

But when I did this:


as.character(poudel.df$DATE)

[1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"  "1/7/2011"
[7] "1/8/2011"  "1/9/2011"  "1/10/2011"

and

as.Date(as.character(poudel.df$DATE),"%m/%d/$Y")

[1] NA NA NA NA NA NA NA NA NA

because the dates do not have leading zeros.

There are approximately 30 years of nearly daily data in the entire set.

Any suggestions would be much appreciated.

Sincerely,
Erin




__
R-help@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.


Re: [R] question about formatting Dates

2012-06-26 Thread Patrick Connolly
On Tue, 26-Jun-2012 at 10:54PM -0500, Erin Hodgess wrote:

|> Dear R People:
|> 
|> I have dates as factors in the following:
|> 
|> > poudel.df$DATE
|> [1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011  1/8/2011
|> [8] 1/9/2011  1/10/2011
|> Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011
|> >
|> 
|> I want them to be "regular" dates which can be sorted, etc.
|> 
|> But when I did this:
|> 
|> > as.character(poudel.df$DATE)
|> [1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"  "1/7/2011"
|> [7] "1/8/2011"  "1/9/2011"  "1/10/2011"
|> 
|> and
|> > as.Date(as.character(poudel.df$DATE),"%m/%d/$Y")
|> [1] NA NA NA NA NA NA NA NA NA
|> 
|> because the dates do not have leading zeros.

I don't think that's the reason why.

> as.Date(c("1/2/2011",  "1/4/2011",  "1/4/2011"), format = "%m/%d/%Y")
[1] "2011-01-02" "2011-01-04" "2011-01-04"
> 

Leading zeros aren't essential.  




|> 
|> There are approximately 30 years of nearly daily data in the entire set.
|> 
|> Any suggestions would be much appreciated.
|> 
|> Sincerely,
|> Erin
|> 
|> 
|> -- 
|> Erin Hodgess
|> Associate Professor
|> Department of Computer and Mathematical Sciences
|> University of Houston - Downtown
|> mailto: erinm.hodg...@gmail.com
|> 
|> __
|> R-help@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.

-- 
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.   
   ___Patrick Connolly   
 {~._.~}   Great minds discuss ideas
 _( Y )_ Average minds discuss events 
(:_~*~_:)  Small minds discuss people  
 (_)-(_)  . Eleanor Roosevelt
  
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.

__
R-help@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.


Re: [R] question about formatting Dates

2012-06-26 Thread R. Michael Weylandt
On Tue, Jun 26, 2012 at 10:54 PM, Erin Hodgess  wrote:
> Dear R People:
>
> I have dates as factors in the following:
>
>> poudel.df$DATE
> [1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011  1/8/2011
> [8] 1/9/2011  1/10/2011
> Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011
>>
>
> I want them to be "regular" dates which can be sorted, etc.
>
> But when I did this:
>
>> as.character(poudel.df$DATE)
> [1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"  "1/7/2011"
> [7] "1/8/2011"  "1/9/2011"  "1/10/2011"
>
> and
>> as.Date(as.character(poudel.df$DATE),"%m/%d/$Y")

Right about ...
 ^

should be a percent instead of a dollar sign.

Also, probably can't hurt to used a named argument (but I don't think
that's the problem here)

In the future dput()-ery would be much appreciated.

Michael

> [1] NA NA NA NA NA NA NA NA NA
>
> because the dates do not have leading zeros.
>
> There are approximately 30 years of nearly daily data in the entire set.
>
> Any suggestions would be much appreciated.
>
> Sincerely,
> Erin
>
>
> --
> Erin Hodgess
> Associate Professor
> Department of Computer and Mathematical Sciences
> University of Houston - Downtown
> mailto: erinm.hodg...@gmail.com
>
> __
> R-help@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.

__
R-help@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.


[R] question about formatting Dates

2012-06-26 Thread Erin Hodgess
Dear R People:

I have dates as factors in the following:

> poudel.df$DATE
[1] 1/2/2011  1/4/2011  1/4/2011  1/4/2011  1/6/2011  1/7/2011  1/8/2011
[8] 1/9/2011  1/10/2011
Levels: 1/10/2011 1/2/2011 1/4/2011 1/6/2011 1/7/2011 1/8/2011 1/9/2011
>

I want them to be "regular" dates which can be sorted, etc.

But when I did this:

> as.character(poudel.df$DATE)
[1] "1/2/2011"  "1/4/2011"  "1/4/2011"  "1/4/2011"  "1/6/2011"  "1/7/2011"
[7] "1/8/2011"  "1/9/2011"  "1/10/2011"

and
> as.Date(as.character(poudel.df$DATE),"%m/%d/$Y")
[1] NA NA NA NA NA NA NA NA NA

because the dates do not have leading zeros.

There are approximately 30 years of nearly daily data in the entire set.

Any suggestions would be much appreciated.

Sincerely,
Erin


-- 
Erin Hodgess
Associate Professor
Department of Computer and Mathematical Sciences
University of Houston - Downtown
mailto: erinm.hodg...@gmail.com

__
R-help@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.