Я тестирую text2vec . В каталоге есть только 2 файла (1.txt, 2.txt, очень маленького размера, около 20 КБ каждый). Я хотел проверить их сходство. Я не знаю, почему там написано 54 документа.
> library(stringr)
> library(NLP)
> library(tm)
> library(text2vec)
> filedir="F:\\0 R\\similarity test\\corpus"
> prep_fun = function(x) {
+ x %>%
+ # make text lower case
+ str_to_lower %>%
+ # remove non-alphanumeric symbols
+ str_replace_all("[^[:alnum:]]", " ") %>%
+ # collapse multiple spaces
+ str_replace_all("\\s+", " ")
+ }
> allfile=idir(filedir)
> #files=list.files(path=filedir, full.names=T)
> #allfile=ifiles(files)
> it=itoken(allfile, preprocessor=prep_fun, progressbar=F)
> stopwrd=stopwords("en")
> v=create_vocabulary(it, stopwords=stopwrd)
> v
Number of docs: 54
174 stopwords: i, me, my, myself, we, our ...
ngram_min = 1; ngram_max = 1
Vocabulary:
term term_count doc_count
1: house 2 2
2: 224161072 2 2
3: suggests 2 2
4: remains 2 2
5: published 2 2
---
338: year 14 6
339: nep 16 12
340: will 16 10
341: chinese 20 12
342: malay 20 10
>
Я экспортирую данные в csv и нахожу, что новые имена файлов называются:
1.txt_1
1.txt_2
1.txt_3
1.txt_4
...
...
Если бы я использовал
#files=list.files(path=filedir, full.names=T)
#allfile=ifiles(files)
это все еще говорит 54 документа
И между ними также есть меры сходства. Большинство из них имеют 0 сходства.
Пожалуйста, дайте мне знать, если это будет такой случай или что-либо еще.
Мне нужна только одна мера сходства для 1.txt и 2.txt и выводить такую матрицу, которая содержит только меру для этих двух файлов.