集體智慧編程:提供推薦_為評(píng)論者打分

對(duì)具體的某一用戶(hù),根據(jù)其他用戶(hù)的評(píng)價(jià)結(jié)果,計(jì)算出他與每一個(gè)用戶(hù)的相似程度,找出相似程度最高的前N位。
在函數(shù)中,通過(guò)similarity指定使用的相關(guān)性算法。

"""
為評(píng)論者打分
"""  
#書(shū)中算法
def topMatches(prefs,person,n = 5,similarity = sim_pearson):
    score = [(similarity(prefs,person,other),other)
                    for other in prefs if other != person]
    
    score.sort()  #從小到大
    score.reverse()   #反過(guò)來(lái)排
    return score[0:n]

#自己編寫(xiě)
def topMatches2(prefs,person,n = 5,similarity = sim_pearson):
    score = {}
    for item in prefs:
        if item != person:
            score[item] = similarity(prefs,person,item)
    
    score_sort = sorted(zip(score.values(),score.keys()))
    score_sort.reverse()
    score_sort = score_sort[0:n]
    return score_sort

幾個(gè)小筆記:

1、列表排序,從小排到大
score.sort()
注意,這個(gè)score由元組組成 [(相似度,人名),……],它會(huì)根據(jù)元組第一個(gè)值進(jìn)行排序。

2、把列表元素順序調(diào)轉(zhuǎn)
score.reverse()

3、字典如何排序:
(1)zip(score.values(),score.keys()),把字典中每個(gè)值組成(value,key)的元組,通過(guò)zip把這些元組構(gòu)成列表。
(2)score_sort = sorted(zip(score.values(),score.keys())),通過(guò)sorted函數(shù),與scort.sort()等價(jià)。

4、取列表前N個(gè):
score[0:n]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,635評(píng)論 19 139
  • 在無(wú)錫綠點(diǎn)電子廠(chǎng)的工作,每天都是三點(diǎn)一線(xiàn),宿舍,食堂,產(chǎn)線(xiàn)來(lái)回走動(dòng)。生活雖然很平淡,但就是這樣平淡的日子,才讓我能...
    看一樹(shù)春秋閱讀 5,270評(píng)論 0 0
  • 今天在網(wǎng)吧下片的時(shí)候重溫了一下初中時(shí)候玩的經(jīng)典小游戲魔塔21層版,發(fā)現(xiàn)小時(shí)候還是玩的不夠細(xì)。 游戲的模式是這樣的:...
    李相赫的樂(lè)芙蘭閱讀 17,355評(píng)論 1 2
  • 大約是在2015年下半年,我開(kāi)始真正接觸國(guó)學(xué)。一句“日行三善,三年可改命運(yùn)”打動(dòng)了我。 之前的命運(yùn)也不能算不好,但...
    清談散客閱讀 363評(píng)論 0 1
  • 沒(méi)有鮮麗的服飾 沒(méi)有帥氣的外表 從不說(shuō)豪言壯語(yǔ) 更沒(méi)什么豐功偉績(jī) 拿著微薄的工資 盡職盡責(zé) 無(wú)悔無(wú)怨 任憑歲月從指...
    也無(wú)風(fēng)雨亦無(wú)晴閱讀 177評(píng)論 0 0

友情鏈接更多精彩內(nèi)容