4.2 C
London
Friday, December 20, 2024
HomeStatistics TutorialRHow to Extract Month from Date in R (With Examples)

How to Extract Month from Date in R (With Examples)

Related stories

Learn About Opening an Automobile Repair Shop in India

Starting a car repair shop is quite a good...

Unlocking the Power: Embracing the Benefits of Tax-Free Investing

  Unlocking the Power: Embracing the Benefits of Tax-Free Investing For...

Income Splitting in Canada for 2023

  Income Splitting in Canada for 2023 The federal government’s expanded...

Can I Deduct Home Office Expenses on my Tax Return 2023?

Can I Deduct Home Office Expenses on my Tax...

Canadian Tax – Personal Tax Deadline 2022

  Canadian Tax – Personal Tax Deadline 2022 Resources and Tools...

There are two ways to quickly extract the month from a date in R:

Method 1: Use format()

df$month as.Date(df$date, format="%d/%m/%Y"),"%m")

Method 2: Use the lubridate package

library(lubridate)

df$month mdy(df$date))

This tutorial shows an example of how to use each of these methods in practice.

Method 1: Extract Month from Date Using format()

The following code shows how to extract the month from a date using the format() function combined with the “%m” argument:

#create data frame
df frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 01/01/2021    34
2 01/04/2021    36
3 01/09/2021    44

#create new variable that contains month
df$month as.Date(df$date, format="%d/%m/%Y"),"%m")

#view updated data frame
df

        date sales month
1 01/01/2021    34    01
2 01/04/2021    36    04
3 01/09/2021    44    09

Note that this format() function works with a variety of date formats. You simply must specify the format:

#create data frame
df frame(date=c("2021-01-01", "2021-01-04" , "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 2021-01-01    34
2 2021-01-04    36
3 2021-01-09    44

#create new variable that contains month
df$monthas.Date(df$date, format="%Y-%m-%d"),"%m")

#view updated data frame
df

        date sales month
1 2021-01-01    34    01
2 2021-01-04    36    01
3 2021-01-09    44    01

Note: You can also use %B to extract the month as a string name (January) instead of a numeric value (01).

Method 2: Extract Month from Date Using Lubridate

We can also use functions from the lubridate package to quickly extract the month from a date:

library(lubridate)

#create data frame
df frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 01/01/2021    34
2 01/04/2021    36
3 01/09/2021    44

#create new variable that contains month
df$monthmdy(df$date))

#view updated data frame
df

        date sales month
1 01/01/2021    34     1
2 01/04/2021    36     1
3 01/09/2021    44     1

Lubridate also works with a variety of date formats. You simply must specify the format:

#create data frame
df frame(date=c("2021-01-01", "2021-01-04" , "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 2021-01-01    34
2 2021-01-04    36
3 2021-01-09    44

#create new variable that contains month
df$month ymd(df$date))

#view updated data frame
df

        date sales month
1 2021-01-01    34     1
2 2021-01-04    36     1
3 2021-01-09    44     1

Additional Resources

The following tutorials explain how to perform other common operations in R:

How to Extract Year from Date in R
How to Calculate Number of Months Between Dates in R

Subscribe

- Never miss a story with notifications

- Gain full access to our premium content

- Browse free from up to 5 devices at once

Latest stories