format a Date column in a Data Frame

I've the following data from a data frame

Name,JoiningDate,AmtPaid Joe,12/31/09,1000 Amy,10/28/09,100 John,05/06/10,200 

The Joining Date is coming in as a factor (when I sapply). How can I convert this to date and then sort on JoiningDate?

3 Answers

This should do it (where df is your dataframe)

df$JoiningDate <- as.Date(df$JoiningDate , format = "%m/%d/%y") df[order(df$JoiningDate ),] 
5

try this package, works wonders, and was made for date/time...

library(lubridate) Portfolio$Date2 <- mdy(Portfolio.all$Date2) 

The data.table package has its IDate class and functionalities similar to lubridate or the zoo package. You could do:

dt = data.table( Name = c('Joe', 'Amy', 'John'), JoiningDate = c('12/31/09', '10/28/09', '05/06/10'), AmtPaid = c(1000, 100, 200) ) require(data.table) dt[ , JoiningDate := as.IDate(JoiningDate, '%m/%d/%y') ] 

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like