獲得價值我有這兩個數據集:檢查單詞在字典中,並從另一列
stemmed <- data.frame(
stem = c('super puper', 'only for you')
)
super <- data.frame(
word = c('super', 'puper', 'you'),
weight = c(0.5, 0.1, 0.3)
)
我檢查,如果一個字是正和負的字典,並計算了多少次。我有這樣一個循環:
for (i in 1:nrow(stemmed)){
words = strsplit(as.character(stemmed$stem)," ")
stemmed$super[i] <- sum(words[[i]] %in% super$word)/length(words[[i]])
}
(順便說一句,如果你知道如何改進這個代碼,請告訴我。)
現在我想不僅計算詞的數量,但重量(包含在super$weight
中的單詞權重的總和)。
於是,我就做這樣的事情在循環:
if (words[[i]] %in% super$word) {
stemmed$super[i] = sum(with super[super$word==words[[i]],],
sum(super$weight))}
我希望得到這樣一個數據幀:
stem super
super puper 0.6
only for you 0.3
我不`噸知道如何解決這個問題...
'colSums(T(sapply(超$字,grepl,朵朵$幹))*超$權重)' – user20650
下你的心流,在'match'可能是你需要的功能 –