Your date values don't have an unambiguous standard format, that is why as.Date() fails. It is way easier to use the lubridate package to deal with this, see this example.
library(tidyverse)
library(lubridate)
# Sample data in a copy/paste friendly format
data_frame <- data.frame(
datetime = c("4/12/2016 12:00:00 AM", "4/12/2016 13:00:00 AM")
)
# Relevant code
data_frame %>%
mutate(datetime = dmy_hms(datetime),
date = as.Date(datetime))
#> datetime date
#> 1 2016-12-04 00:00:00 2016-12-04
#> 2 2016-12-04 13:00:00 2016-12-04
Created on 2022-06-14 by the reprex package (v2.0.1)