How to write code for getting Start date and End Date

Hi Team,

I have one date column i need to create Start date and End date from it.

November 5th 2019

Example date in the column:- 11/05/2019
Required :-
Start date should be week starting Monday 11/04/2019
End date should be week ending that is on Friday 11/08/2019

Could any one help me to resolve this.

Thanks

Hi nanas!

This looks like a job for lubridate, and its wday() function.

Does this do what you intended?

library(tidyverse)
library(lubridate)
#> 
#> Attaching package: 'lubridate'
#> The following object is masked from 'package:base':
#> 
#>     date
#toy dataset
data <- data.frame(
  date = ymd(c('2007-10-07', '2014-04-08', '2017-03-21'))
)
# date wrangling with lubridate function wday
data %>% 
  mutate(start_shift = 2 - wday(date), # days away from Monday
         end_shift = 6 - wday(date), # days away from Friday
         start_date = date + start_shift, # shift to Monday
         end_date = date + end_shift, #shift to Friday
         start_wday = wday(start_date, label = TRUE), # check = Monday
         end_wday = wday(end_date, label = TRUE)) # check = Friday
#>         date start_shift end_shift start_date   end_date start_wday
#> 1 2007-10-07           1         5 2007-10-08 2007-10-12        Mon
#> 2 2014-04-08          -1         3 2014-04-07 2014-04-11        Mon
#> 3 2017-03-21          -1         3 2017-03-20 2017-03-24        Mon
#>   end_wday
#> 1      Fri
#> 2      Fri
#> 3      Fri

Created on 2019-11-08 by the reprex package (v0.3.0)

and here is a how-to on how to write your own reprex - it makes answering questions easier

Thanks you so much. However am not able to install these packages in R studio.'

install.packages("tidyverse")
library(tidyverse)
library(lubridate)

After installing when i recall the library it shows below error.

library(tidyverse)
Error in library(tidyverse) : there is no package called ‘tidyverse’

Can any one please let me know how to install package in appropriate manner. How to cross check whether its installed correctly.

Hi @nanas,
what do you see in the console when you run install.packages("tidyverse")? Can you paste the output?

1 Like

Thanks for the reply..

After installing "Tidyverse" below its shows in console.

The downloaded source packages are in
‘C:\Users\anarae\AppData\Local\Temp\RtmpEDFYr3\downloaded_packages’

Hi Valeri...

Even after installing dplyr am getting below error package is not loaded

Error:-

library(dplyr)
Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) :
there is no package called ‘bindrcpp’
In addition: Warning message:
package ‘dplyr’ was built under R version 3.3.3
Error: package or namespace load failed for ‘dplyr’

This is giving you a clue, you are missing that package dependency, try installing it first

install.packages("bindrcpp")