Hi

I wonder if it is easier to convert the dates to character format and then 
reformat using gsub or the like

str(SampleData)
SampleData$date <- as.character(SampleData$date)
str(SampleData)

as.Date(
ifelse(nchar(SampleData[,"date"]) == 9, as.Date(SampleData[,"date"], format = 
"%d-%b-%y"),
       ifelse(nchar(SampleData[,"date"]) == 8, as.Date(SampleData[,"date"], 
format = "%d/%m/%y"),
              ifelse(as.numeric(substr(SampleData[,"date"],1,2)) > 12,
                      as.Date(SampleData[,"date"], format =  "%d/%m/%Y"),
                      as.Date(SampleData[,"date"], format =  "%m/%d/%Y")) )), 
origin = as.Date("1970-01-01"))

Beware of the American format in months jan feb mar oct nov -- will need more 
conditions to be imposed

Regards

Duncan

Duncan Mackay
Department of Agronomy and Soil Science
University of New England
Armidale NSW 2351
Email: home: mac...@northnet.com.au



-----Original Message-----
From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of farnoosh 
sheikhi via R-help
Sent: Thursday, 30 July 2015 07:16
To: Sarah Goslee
Cc: R. Help
Subject: Re: [R] Mixed Date Formats

Hi Sarah,
Thanks for getting back to me.Here is an example of my data:SampleData <- 
structure(list(id = 1:7, value = c(5813L, 8706L, 4049L, 5877L,                  
                            1375L, 2223L, 3423L), date = structure(c(4L, 3L, 
2L, 1L, 7L,                                                                     
                  6L, 5L), .Label = c("05/12/11", "06/05/11", "07-Dec-11",      
                                                                                
                     "19-Dec-11", "01/22/2011", "10/19/2011", "31/12/2011"      
                                                                                
), class = "factor")), .Names = c("id", "value", "date"), row.names = c(NA,     
                                                                                
                                                                          -7L), 
class = "data.frame")SampleData
Thanks for your help:).
 
 


     On Wednesday, July 29, 2015 1:50 PM, Sarah Goslee <sarah.gos...@gmail.com> 
wrote:
   

 On Wed, Jul 29, 2015 at 2:45 PM, farnoosh sheikhi via R-help
<r-help@r-project.org> wrote:
>  Hi Arun,
> Hope all is well with you. I have a data with a column for date.The date 
> format is mixed. There are date values with Month/Day/Year format and values 
> with Day/Month/Year format.I don't know how to unify it.I really appreciate 
> your help.Thanks.

You sent this to the R-help list, not just to Arun, so I'm assuming
this is an R question. The best way to get help is to provide a sample
of your data using dput() and to clearly specify what you would like
as the result - "unify" is a bit vague. paste(x, collapse="") could be
considered unification, after all.

Sarah

-- 
Sarah Goslee
http://www.functionaldiversity.org


  
        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
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 -- To UNSUBSCRIBE and more, see
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.

Reply via email to