Я хотел бы разделить некоторые данные в кадре данных на определенную строку и подсчитать частоту.R lapply using stringi и rbind
После того, как я использовал несколько методов, я придумал метод, но в моих результатах есть небольшая ошибка.
Пример:
данных файла данных кадра:
data
abc hello
hello
aaa
zxy
xyz
Список:
list
abc
bcd
efg
aaa
Мой код:
lapply(list$list, function(x){
t <- data.frame(words = stri_extract(df$data, coll=x))
t<- setDT(t)[, .(Count = .N), by = words]
t<-t[complete.cases(t$words)]
result<-rbind(result,t)
write.csv(result, "new.csv", row.names = F)
})
В этом примере я бы ожидать CSV фи ле со следующими результатами:
words Count
abc 1
aaa 1
Однако с моим кодом я получил:
words Count
aaa 1
Я знаю stri_extract
должен определить abc
в abc hello
поэтому, возможно, ошибка происходит, когда я использую rbind
?
Смотрите также: 'STRINGI :: stri_list2matrix' – gagolews