Paste function without NAs and other conditions

Ok, final attempt.
All these are trivial variations of the initial solution I gave you, so If you are going to be cleaning text a lot, I recommend you to learn about regular expressions.

library(tidyverse)
source <- data.frame(stringsAsFactors=FALSE,
                     URN = c("test1", "test2", "test3", "test4", "test5",
                             "test6", "test7", "test8", "test9", "test10", "test11"),
                     Test.heading = c("goede uitleg", "Goede sfeer",
                                      "juiste behandeling", NA, "vakkundige afhandeling",
                                      "No comment", NA, NA, "goede uitleg", "goede uitleg", "-"),
                     Recommendation.comment = c("-", "xxx", NA, NA, "zzz", "uw verkoper",
                                                "correcte verkoop", "goede uitleg", "professioneel !!!",
                                                "Goeie service", "nee"),
                     Other.comment = c("ab", "zeer goede uitleg over de aankoop",
                                       "uitleg en vriendelijkheid van de verkoper", NA,
                                       "Bob gaf heel goede uitleg!", NA, "eerder genoemd", NA, NA,
                                       "geen opmerkingen\r\n", "Genoeg info")
)

source %>%
    mutate_all(~str_remove_all(.x, "^.{1,2}$")) %>% # Remove sentences with less than 3 characters
    mutate(all_comment = paste(Test.heading, Recommendation.comment, Other.comment),
           all_comment = str_remove_all(all_comment,
                                        regex("no\\scomment?|\\snee\\s|\\sneen\\s|\\s*n.?a.?\\s*", # Remove NAs
                                              ignore_case = TRUE)),
           all_comment = str_remove_all(all_comment, "(.)\\1{2,}"), # Remove repeted characters
           all_comment = str_remove_all(all_comment, "[:cntrl:]"), # Remove control characters like /n/r
           all_comment = str_replace_all(all_comment, "\\s\\s+", " ")) # Remove extra spaces
#>       URN           Test.heading Recommendation.comment
#> 1   test1           goede uitleg                       
#> 2   test2            Goede sfeer                    xxx
#> 3   test3     juiste behandeling                   <NA>
#> 4   test4                   <NA>                   <NA>
#> 5   test5 vakkundige afhandeling                    zzz
#> 6   test6             No comment            uw verkoper
#> 7   test7                   <NA>       correcte verkoop
#> 8   test8                   <NA>           goede uitleg
#> 9   test9           goede uitleg      professioneel !!!
#> 10 test10           goede uitleg          Goeie service
#> 11 test11                                           nee
#>                                Other.comment
#> 1                                           
#> 2          zeer goede uitleg over de aankoop
#> 3  uitleg en vriendelijkheid van de verkoper
#> 4                                       <NA>
#> 5                 Bob gaf heel goede uitleg!
#> 6                                       <NA>
#> 7                             eerder genoemd
#> 8                                       <NA>
#> 9                                       <NA>
#> 10                      geen opmerkingen\r\n
#> 11                               Genoeg info
#>                                                    all_comment
#> 1                                                goede uitleg 
#> 2                Goede sfeer zeer goede uitleg over de aankoop
#> 3  juiste behandelinguitleg en vriendelijkheid van de verkoper
#> 4                                                             
#> 5            vakkundige afhandeling Bob gaf heel goede uitleg!
#> 6                                                  uw verkoper
#> 7                              correcte verkoop eerder genoemd
#> 8                                                 goede uitleg
#> 9                                  goede uitleg professioneel 
#> 10                 goede uitleg Goeie service geen opmerkingen
#> 11                                                 Genoeg info
1 Like