五月山雨 2023-05-26 10:07 采纳率: 75%
浏览 24
已结题

该怎么用代码绘制出后验分布图像?

部分代码如下:

img


请问该怎么写代码才能绘制出关于p的后验分布图像?

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-05-26 20:15
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7517476
    • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:p站多线程下载视频
    • 除此之外, 这篇博客: 写个爬虫爬取p站画师的画作中的 1.函数 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      代码如下(示例):

      from urllib.request import urlopen
      from bs4 import BeautifulSoup
      
      
      def worm(temp):
          cards = []
          url = "http://acg17.com/category/meitu/pixiv-painter/page/{:d}/".format(temp)
          html = urlopen(url)
          bsObj = BeautifulSoup(html.read(), features='html.parser')
          for pic in bsObj.findAll('article'):
              url2 = pic.a['href']
              html2 = urlopen(url2)
              bsObj2 = BeautifulSoup(html2.read(), features='html.parser')
              for photo in bsObj2.findAll('p'):
                  if photo.img != None:
                      if photo.img['src'][24] == 'l':
                          break
                      elif photo.img['src'][-3:] == 'gif':
                          pass
                      else:
                          cards.append(photo.img['src'])
              for card in cards:
                  print(card)
      for i in range(10, 20):
          print("这是第{:d}页的本子  (*∩_∩*)′ 献上 ".format(i))
          worm(i)
          print("\n")
      print("所有的本子都爬好了哦  得意 <( ̄︶ ̄)>")
      
    • 以下回答来自chatgpt:

      针对您的问题,我可以给出以下解决方案:

      import numpy as np
      import matplotlib.pyplot as plt
      
      def posterior_distribution(prior_distribution, likelihood, evidence):
          # 计算似然函数
          likelihood_func = prior_distribution * likelihood
          # 计算归一化常量Z
          Z = np.sum(likelihood_func)
          # 计算后验概率
          posterior = likelihood_func / Z
          return posterior
      
      prior = np.array([.2, .2, .2, .2, .2])
      likelihood = np.array([.3, .6, .8, .9, 1.])
      evidence = .7
      
      posterior = posterior_distribution(prior, likelihood, evidence)
      
      # 绘制并显示后验分布图像
      plt.plot(posterior)
      plt.title('Posterior Distribution')
      plt.xlabel('Parameter p')
      plt.ylabel('Probability')
      plt.show()
      

      在以上代码中,我添加了计算后验分布以及绘制后验分布图像的代码。在posterior_distribution函数中,首先计算了似然函数,然后计算了归一化常量Z,最后得到了后验概率。在绘制后验分布图像时,使用了Matplotlib库的plot方法来绘制折线图,使用title方法添加标题,使用xlabelylabel方法添加x轴和y轴的标签,最后使用show方法显示图像。

      需要注意的是,在绘制图像前需要先调用posterior_distribution函数计算后验概率。此外,该代码中的概率分布都是离散的,因此绘制的是离散的后验分布折线图。如果需要绘制连续的概率分布曲线,可以考虑使用KDE方法(Kernel Density Estimation)。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月4日
  • 已采纳回答 5月27日
  • 创建了问题 5月26日

悬赏问题

  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64
  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作