Я пытаюсь определить термины с помощью grepl, и я получаю слишком много ложных срабатываний. Я надеялся, что может потребоваться два успешных совпадения любого термина из списка (у меня есть ручное кодирование для сегмента моих данных, и я пытаюсь получить автоматизацию, по крайней мере, примерно соответствует этому, но у меня около 5 как и в случае с ручным кодированием). Я не видел grepl как принятие каких-либо аргументов, требующих более одного совпадения для запуска TRUE. Есть ли способ потребовать двух совпадений, чтобы вызвать ИСТИННЫЙ вывод? Или есть какая-то другая функция, которую я должен использовать?Любой способ потребовать два совпадения вместо одного для TRUE с grepl?
GenericColumn <- cbind(grepl(Genericpattern, Statement$Statement.Text, ignore.case = TRUE))
EDIT:
Вот более конкретный пример:
Examplepattern <- 'apple|orange'
ExampleColumn <- cbind(grepl(Examplepattern, Rexample$Statement.Text, ignore.case = TRUE))
В настоящем время, все они будут вызывать верно с grepl. Мне бы хотелось, чтобы элементы с двумя ссылками запускали true.
Пример данных:
Rexample <- structure(list(Statement.Text = structure(c(2L, 1L, 3L, 5L, 4L
), .Label = c("This apple is a test about an apple.", "This is a test about apples.",
"This orange is a test about apples.", "This orange is a test about oranges.",
"This orange is a test."), class = "factor")), .Names = "Statement.Text", row.names = c(NA,
5L), class = "data.frame")
Желаемая Выход: TRUE, FALSE, TRUE, TRUE, FALSE
Я не уверен, какой лучший пример конкретного примера - фактический код doesn В нем нет тонны информации. У меня есть шаблон, сделанный: «code' Genericpattern <- paste (Genericlist, sep =" ", collapse = '|') В нем около 50 терминов, которые я просматриваю в столбце CSV с текстом webscraped. Я просто пытаюсь понять, что есть способ повысить точность, потому что, поскольку кажется, что только один матч слишком чувствителен к метрике, поэтому я надеялся, что ему придется сопоставить два термина (яблоки и апельсины, или яблоки и яблоки, так что два или два одинаковых). – Matthew
См. [Как написать отличный воспроизводимый пример R] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example/5963610#5963610), чтобы мы могли помочь вам , На самом деле, вероятно, вы должны разбираться с парсером HTML, а не с регулярным выражением. 'rvest :: html_nodes' должен делать трюк в паре с селекторами CSS или XPath. – alistaire
У меня уже есть данные в csv, поэтому он уже отключен от веб-сайта в управляемом файле - я просто пытаюсь сопоставить термины дважды, а не один раз прямо сейчас.Я буду следить за этой ссылкой, чтобы узнать, могу ли я придумать воспроизводимый пример, хотя проблема не столько в проблеме, сколько в проблеме с функцией. – Matthew