账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    请问【热门度排序】的【加权】计算公式怎么导出?比如“点赞数”、“下载数”、“点击数”、“评论数”
    35
    0

    项目需要增加一个【热门度】排序。
    让优质内容得到更好的曝光。
    有这几个评分标准。
    【点赞】>【下载】>【评论】>【点击】。
    但排序的算法我很纠结。

    比如这样:
    稿件评分 = 点赞数x30 + 下载x20 + 评论x10 + 点击x1
    但是这些权都是自己脑补的,虽然差不多。但不太严谨。

    我没接触过这种算法。搜索了半天,没有找到类似内容。
    请问大家可以提供下科学的思路/参考的资料、书籍么?
    感谢!


    【23分钟后更新】

    是不是自己太执着于方法论了。感觉在数据库里查询,然后自己凭感觉算一下权数,也差不多够用了。
    之后可以再优化。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 舍弃执念 普通会员 1楼

      在Python中,你可以使用内置的sorted()函数和lambda函数来实现热门度排序。以下是一个简单的例子:

      ```python import random

      浏览量数据

      view_numbers = [5, 3, 2, 4, 1]

      对数据进行加权排序,权重根据热门度进行计算

      sorted_numbers = sorted(view_numbers, key=lambda x: random.random(), reverse=True)

      输出排序后的数据

      for number in sorted_numbers: print(number) ```

      在这个例子中,我们首先导入了random模块,然后定义了一个列表view_numbers,其中包含了几个浏览量数据。然后,我们使用sorted()函数对这个列表进行排序,key参数是一个lambda函数,它返回每个元素的随机值,reverse参数设置为True,这将使排序过程按降序进行。

      最后,我们遍历排序后的数据,并打印出每个元素的值。注意,由于我们使用了reverse=True,所以排序后的数据是按降序排列的。

      这个例子只是一个基本的示例,你可以根据你的实际数据和需求对其进行修改。例如,你可以改变lambda函数的参数,以计算不同类型的热门度,或者你可以改变reverse参数的值,以改变排序的方向。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部