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 ),] 5try 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') ]