Проблема: Я работаю с токенизатором для интеллектуального анализа текста и хотел бы ограничить длину строк в моих входных данных. Следующий код содержит целую строку , если слово включено.сохранить слова после ключевого слова в строке R
#create data frame with data
dd <- data.frame(
text = c("hello how are you doing thank
you for helping me with this
problem","junk","junk"), stringsAsFactors = F)
#keep string that only include term "how"
dd <- filter(dd, grepl('how', text))
Вопрос: Как я могу изменить код, чтобы просто держать N слов после ключевых слов.
например.
, если N = 1, то дд будет включать в себя: как
, если N = 2, то дд будет включать в себя: как ты
, если N = 3, то дд будет включать в себя: как вы делаете
...
Мне нужен код, который будет работать, если я включил дополнительные слова в донжон:
#keep string that only include terms "how" and "with"
dd <- filter(dd, grepl('how|with', text))
Не совсем регулярное выражение гуру, но это может помочь вам: https://regex101.com/r/95g7yT/1 – digEmAll
Что вы ожидаете увидеть в результате, если вы указать два термина: «как» и «) с« и N = 3, например? Кроме того, что, если расстояние между двумя членами меньше, чем 3 слова, например, если бы мы выбрали '' hello ''и' 'are' '? –
1 - С двумя терминами «как» ИЛИ «с» и N = 3 Я хотел бы сгенерировать: «как вы справляетесь с этой проблемой». Результаты для второго термина «с» будут содержать только слова до конца строки. 2 - Если условия были «привет» и «есть», я хотел бы сохранить: «привет, как вы выражаете благодарность», если это возможно. – BEMR