stringdist как альтернатива agrep - PullRequest
0 голосов
/ 16 апреля 2020

Есть несколько обсуждений, пример здесь , предлагая stringdst в качестве лучшей / более быстрой альтернативы для agrep. Однако я не могу выяснить или придумать сам, что за функция stringdst и как именно она выполняет agrep. В то время как

agrep('aca','aabbbbbbbbbbbbbbbbbbbbbb',max.distance = 0.005)

ищет шаблон aca в строке.

amatch('aca','aabbbbbbbbbbbbbbbbbbbbb',maxDist = 15)

сравнивает строки. Поэтому независимо от того, сколько еще символов я добавлю в строку, agrep все же выдаст [1] 1, если max.distance не изменится. В то же время расширение строки 'aabbbbbbbbb ...' в amatch увеличивает расстояние между строками, поэтому результат изменяется с [1] 1 до [1] NA. Как заставить amatch или другую функцию из stringdst вести себя как agrep, то есть искать не точный шаблон в большей строке, а не сравнивать шаблон со всей строкой? И действительно ли эта потенциальная альтернатива будет быстрее, чем agrep?

...