Dates entered as literal character strings, such as "December 18, 1971" are not the same thing as date or datetime objects.
The lubridate
package has convenient functions to transform strings to date objects.
library(lubridate)
#>
#> Attaching package: 'lubridate'
#> The following objects are masked from 'package:base':
#>
#> date, intersect, setdiff, union
the_date <- "December 18, 1917"
mdy(the_date) -> result
str(result)
#> Date[1:1], format: "1917-12-18"
Created on 2020-09-28 by the reprex package (v0.3.0.9001)