Вы можете сделать это, используя gsub для удаления скобок и текста внутри них.Ниже приведены сведения о решении и его решении.
library(dplyr)
library(stringr)
df <- data.frame(id=c(1,2,3),
film=c('Film','Film with (brackets)','Another film'))
movie <- df %>%
mutate(words.of.title = str_count(str_trim(gsub('\\(.*?\\)', '', film)), "\\S+"))
movie
#> id film words.of.title
#> 1 1 Film 1
#> 2 2 Film with (brackets) 2
#> 3 3 Another film 2
Создано в 2019-01-02 пакетом Представить (v0.2.0).