Подсчет уникальных строковых паттернов подряд

у меня есть следующий пример:

dat <- read.table(text="index  string
1      'I have first and second'
2      'I have first, first'
3      'I have second and first and thirdeen'", header=TRUE)


toMatch <-  c('first', 'second', 'third')

dat$count <- stri_count_regex(dat$string, paste0('\\b',toMatch,'\\b', collapse="|"))

dat

index                               string count
1     1              I have first and second     2
2     2                  I have first, first     2
3     3 I have second and first and thirdeen     2

Я хочу добавить к кадру данных количество столбцов, которое сообщит мне, сколько уникальных слов имеет каждая строка. В этом случае желаемый результат будет

index                               string count
1     1              I have first and second     2
2     2                  I have first, first     1
3     3 I have second and first and thirdeen     2

Не могли бы вы дать мне подсказку, как изменить исходную формулу? Большое спасибо

4 голоса | спросил LMach 24 AMpTue, 24 Apr 2018 11:03:45 +030003Tuesday 2018, 11:03:45

2 ответа


0
С помощью базы R вы можете сделать следующее:который возвращаетсяНадеюсь это поможет!
ответил Florian 24 AMpTue, 24 Apr 2018 11:08:47 +030008Tuesday 2018, 11:08:47
0
Вместо этого мы можем использовать ---- +: = 0 =: + ----, что дает нам точные совпадения, а затем вычислить различные значения, используя ---- +: = 1 =: + ---- или ---- +: = 2 =: + ---- в базе.Или похож в базе R
ответил Ronak Shah 24 AMpTue, 24 Apr 2018 11:20:57 +030020Tuesday 2018, 11:20:57

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132