Вот что я пытаюсь сделать: Когда термин, который я анализирую, является «яблоки», мне хотелось бы знать, сколько транспозиций необходимо на «яблоки», чтобы его можно было найти в строке.подсчитайте транспозиции, необходимые для строки, чтобы ее можно было найти в другой строке
«купить яблоки сейчас» => 0 необходима транспозиция (присутствуют яблоки).
«дешевый аксессуар онлайн» => требуется 1 транспозиция (яблоки к яблокам).
«найти здесь ваше место» => 2 транспозиции необходимы (яблоки на плече).
"aple" => Требуется 2 транспозиции (яблоки для APLE).
«бананы» => необходимо 5 транспозиций (яблоки для бананов).
stringdist и функции adist не работают, потому что они говорят мне, сколько транспозиций необходимо для преобразования одной строки в другую. Во всяком случае, вот то, что я написал до сих пор:
#build matrix
a <- c(rep("apples",5),rep("bananas",3))
b <- c("buy apples now","cheap aples online","find your ap ple here","aple","bananas","cherry and bananas","pumpkin","banana split")
d<- data.frame(a,b)
colnames(d)<-c("term","string")
#count transpositions needed
d$transpositions <- mapply(adist,d$term,d$string)
print(d)
ОК спасибо, должен ли я добавить его в заголовок слишком или достаточно для метки? –
Я отредактировал ваш код (в моем ответе), чтобы быть яблоками в 'a <- c (rep (" apples ", 5), rep (" bananas ", 3))' – infominer
Ouch, thanks infominer, позвольте мне исправить его вопрос тоже! –