as.Date Function in R (Example)
In this tutorial, I’ll illustrate how to convert a character to the Date class using the as.Date function in R.
The tutorial will contain the following content:
Let’s take a look at some R codes in action.
Definition & Basic R Syntax of as.Date Function
Definition: The as.Date R function converts character strings to the Date class.
Basic R Syntax: Please find the basic R programming syntax of the as.Date function below.
as.Date("2020-12-10") # Basic R syntax of as.Date function
In the remaining post, I’ll show an example for the application of the as.Date function in the R programming language.
Example Data
The following data will be used as basement for this R programming tutorial:
my_date <- "2020-10-05" # Create example date my_date # Print example date # "2020-10-05"
The previous RStudio console output shows the structure of our example data: It’s a data object containing a single character string with year-month-day format.
Let’s check the data type of our example data:
class(my_date) # Check class of example date # "character"
It’s a character string…
Example: Convert Character String to Date Using as.Date() Function
The following R syntax illustrates how to convert a character string to a Date object in R. For this task, we can use the as.Date function as shown below:
my_date_new1 <- as.Date(my_date) # Convert character string my_date_new1 # Print new date # "2020-10-05"
The previous output of the RStudio console looks exactly as the output of our original input data. However, by checking the data class we see the difference:
class(my_date_new1) # Check class # "Date"
The updated data object has the class Date. Looks good!
Video, Further Resources & Summary
Have a look at the following video of my YouTube channel. In the video, I’m explaining the contents of the present tutorial.
Please accept YouTube cookies to play this video. By accepting you will be accessing content from YouTube, a service provided by an external third party.
If you accept this notice, your choice will be saved and the page will refresh.
In addition, you may want to read some of the related articles that I have published on this homepage.
- Convert Character String to Date Object
- Convert Date to Numeric Time Object
- How to Create a Range of Dates
- Convert Date to Day of Week
- R Functions List (+ Examples)
- The R Programming Language
At this point you should have learned how to change characters to dates in R programming. Let me know in the comments section below, in case you have additional questions. Besides that, please subscribe to my email newsletter to receive updates on the newest tutorials.
Statistics Globe Newsletter
8 Comments. Leave new
Hi Joachim,
Thank you for your easy to follow tutorials.
I have a question regarding the as.Date transformation.
I have imported some data into R, but on import, my dates where converted from Jan-85 , Feb-85, etc… to 31078, 31106, etc… After a gather manipulation they are now shown as 31078, 31106 but the class is a character.
I have tried the as.Date manipulation to convert 31078 back to Jan-85 but I either get errors or 31078 is converted into today’s date.
I would therefore really appreciate your help.
Thank you in advance.
Best Regards,
Efi
Hey Efi,
Thank you for your comment and the kind words!
I have tried to reproduce your problem, but it’s difficult to do this without seeing the real data.
Could you send me a small subset of your data via email to joachim@statisticsglobe.com?
Regards, Joachim
Thank you Joachim for this.
My data was digitally obtained and therefore saved with slashes i.e d/m/y in csv
I have imported this same data into R and I’d like it to be read as dates not characters.
This is a vector (2 entire columns) not an object in a given dataset.
Thereafter I’d like to subtract the dates from the 2 columns from each other, row by row.
I’ll appreciate your assistance.
Hi Derrick,
Could you provide an example how your data looks like? I’m not sure if I got what you mean with the last part of your question.
Regards
Joachim
Hi Joachim,
Thank you for your easy-to-follow tutorials.
I have a question regarding the as.Date transformation.
I am trying to convert character to date class, apparently works. However, the formate and the date itself are wrong.
My data set is from 2014 to 2016 and is formated day. month and year. Afterward, it is converted to a completely different date starting in 2020 and converted to year, day, month.
[993] “07/03/2016” “07/03/2016” “07/03/2016” “07/03/2016” “04/04/2016” “04/04/2016” “04/04/2016” “04/04/2016”
[ reached getOption(“max.print”) — omitted 860 entries ]
> class(DB_Succion_Cups$DATE_MED)
[1] “character”
> Dates_new= as.Date(DB_Succion_Cups$DATE_MED, format = “%d/%m/%y”)
> class(Dates_new)
[1] “Date”
> Dates_new
[1] “2020-02-10” “2020-02-10” “2020-02-10” “2020-02-10” “2020-02-10” “2020-02-10” “2020-02-10” “2020-02-10”
[9] “2020-02-10” “2020-02-10”
I really appreciate your help. Thanks 🙂
Estela
Hi Estela,
Thanks a lot for the very nice feedback, glad you find my tutorials helpful! 🙂
I think you have to use an uppercase Y instead of a lowercase y when specifying the format of the date.
The following code works for me:
I hope that helps!
Joachim
Hi Joachin.
Worked! So simple!
Thank a lot
Estela
Awesome, glad to hear that! 🙂