2012-07-09 40 views
0

我有一個Rails應用程序,其中包含兩列(名稱和說明)的數據庫。我想運行一個腳本,它將在任一列中找到所有唯一的單詞,並根據它們出現的頻率對它們進行排名。這是爲了生成索引。在Rails數據庫中計算字頻率

我知道我需要排除某些詞(如「the」和「a」),並且計數可能因爲多元化而不完美。但我很樂意在後期處理中手動處理這個問題,我只是在尋找一個基本的腳本,它會給我所有的單詞和它們的頻率。

有沒有人有任何代碼可以做到這一點或任何指導如何去做呢?

回答

1
def unique_word_count 
    @thing = Thing.all 
    @hash = Hash.new(0) 
    @thing.each do |thing| 
    name_array = thing.name.split(' ') 
    description_array = thing.description.split(' ') 
    end 
    name_array.each do |word| 
    @hash[word] += 1 
    end 
    description_array.each do |word| 
    @hash[word] += 1 
    end 
end 

我還沒有運行代碼,但類似的東西可能是你在找什麼。