Я попытался запустить код ниже, однако он не работает, поскольку аргументы не все равны.Как создать таблицу только уникальных элементов в списке, чтобы я мог упорядочить элементы по частоте?
sentence= "I like tea and I love coffee and biscuits"
words = function(x) {
txt = unlist(strsplit(x,' '))
wl = list()
for(i in seq_along(txt)) {
wrd = txt[i]
wl[[wrd]] = c(wl[[wrd]], i)
}
class(wl) <- "wordclass"
return(wl)
}
summary.wordclass <- function(y) {
cat("the frequency of words",names(sort(table(y), decreasing=TRUE)),"\n")
}
wordfreq=words(sentence)
summary(wordfreq)
Я хочу, чтобы получить выходной сигнал как
[1] "I" "and" "like" "tea" "love" "coffee"
Однако я получаю ошибку
Ошибки в таблице (у): все аргументы должны иметь одинаковую длину
Если бы кто-нибудь мог помочь, это было бы здорово!
Нет, они не являются. Посмотрите на 'wordfeq'. Элементы списка имеют разную длину. – Roland
О, поэтому элементы в строке должны быть одинаковой длины, чтобы положить в таблицу? Есть ли способ сделать это? – Ger
Я не уверен, что вы знаете, что делает «таблица» и как она работает. – Roland