with the below data frame I am finding duplicates records, but data frame also have NA's and "" cells. i also want to ignore Na's and blank cells. (without changing original data base)

1. checking duplicates in name part of email
2. checking duplicates in all columns

do we have any other better and simple solution for this...??

```
df <- data.frame(EMP.ID = c(88111,"BBB4477","BBB4058","BBB5832","BBB0338","BBB1814","BBB6543",875430,875970,"BBB0243","BBB1943","BBB9344","BBB9701","BBB1814","BBB8648","BBB4373","BBB7270","BBB6165","BBB7460","BBB7528","BBB6092","BBB7203"),
                 name = c("adam,link","tt,dy","adam,link","gbesada","dojeda","    slew"," alpucheta","    rzona","jachaval","allo,nuny","mbautis","rgrandinettizzy","jali","kintom","namoti,mew","rohan,sah",NA,NA,NA,NA,"",""),
                 email = c("link.adam@gmail.com","dy.tt@abcd.com","link.adam@gmail.com","gbesada@abcd.com","dojeda@abcd.com"," slew@abcd.com"," alpucheta@abcd.com"," rzona@abcd.com","jachaval@abcd.com","allo@abcd.com","mbautis@abcd.com","rgrandinettizzy@abcd.com","jali@abcd.com","kintom@abcd.com","namoti@abcd.com","sah.rohan@abcd.com","","","",NA,"",""))

Employee_ID = "EMP.ID"
Name  = "name"
Email = "email"

df <- df %>% mutate(Name = str_extract(Email, '.*(?=@)')) %>% group_by(Name) %>% 
  mutate(`11. duplicates before @` = case_when(n() >1 & !is.na(Name) ~ "11. Email has duplicate name before @", TRUE ~ ''))

df <- df %>% 
  mutate(across(c(Employee_ID, Email,Name), ~as.integer(duplicated(.,incomparables = c("", NA))), .names = '{c(1,3,54)} unique {c(col)}'))

``

```