The best way to achieve this would be to save the data as an R data file using either save() or saveRDS():
# option 1
# option 2
df <- readRDS("data2.Rds")
This doesn't seem like a great task for regex--even your pattern would miss very close typos like COWID-19 or potential OCR mistakes like C0VID-I9. Instead, I'd suggest using the stringdist package to do fuzzy matching, perhaps stringdist::afind to find approximate matches of "COVID-19". You can read a bit about it here.
This will let you select ...
Wouldn't remove similar looking observations unless you have a strong reason to do so. By deleting similar looking observations you may be adding bias into the underlying distribution responsible for generating the data.
Your model may be misled into learning a biased distribution and that may affect final performance.
To start with use the entire dataset as ...
Below are two functions using my favorite packages:
The first one shows a scatterplot of every column against the target column
The second one shows the correlation of every column with the target column, with confidence intervals (I found how to do that with ggplot here).
scatterplot <- function(...