【每周一坑】蜥蜴流感与贝叶斯定理

简介: 不过今天的题,我希望你们用程序模拟一场蜥蜴流感。比如有10万个人,按照上述3条规则去模拟,最后去统计下检测结果阳性中有多少人是真正的患者。

春季是流感的高发季节。不要觉得只是小小的“感冒”,严重起来甚至也会危及生命,而且还没有特效药。因此,身体不适请及时到医院检查。


今天的问题就与流感诊断有关。此题取自《深入浅出数据分析》一书中的贝叶斯统计一章。


最近流行起一种奇怪的流感,称作蜥蜴流感,虽不致命,但需隔离治疗。关于这种流感,我们已经通过大量统计得知以下事实:


  1. 总人口中有1%的人患有蜥蜴流感
  2. 若某人已患蜥蜴流感,诊断结果为阳性的概率为90%
  3. 若某人未患蜥蜴流感,诊断结果为阳性的概率为9%


如果现在你的诊断结果为阳性,那么你实际患病的可能性有多大?


这个问题可以通过“贝叶斯定”直接计算得出结果。


(书中这里的公式有个符号不对,已修正)


不过今天的题,我希望你们用程序模拟一场蜥蜴流感。比如有10万个人,按照上述3条规则去模拟,最后去统计下检测结果阳性中有多少人是真正的患者。


输出示例:



再用贝叶斯公式计算一下,看看是否符合你的模拟实验结果?


通过这个实验,想必也会让你对检测结果阳性和实际患病之间的关系有新的认识。


期待各位同学提交解答。


提交代码可以使用 paste.ubuntu.comcodeshare.io 等代码分享网站,只需将代码复制上去保存,即可获得一个分享地址,非常方便。




【解答】用代码给图片配上文字


上周的题目涉及到图像处理的库,我们给了参考的方向,今天来说下具体方法。


其实库的调用很简单,来看看 @GS 同学基于 PIL 库的实现:


from PIL import Image, ImageDraw, ImageFont
# 字体
setFont = ImageFont.truetype(r"happyfont2016.ttf", 50)
# 颜色
fillColor = "#ff0000"
# 读取图片
image = Image.open("yuantu.jpg")
# 创建绘图对象
draw = ImageDraw.Draw(image)
width, height = image.size
# 在图上绘制文字
draw.text((40, height - 90), u'陈独秀你坐下!!', font=setFont, fill=fillColor)
# 保存图片
image.save("yuantu.jpg", 'jpeg')



要注意的地方:


  1. 原本的 PIL 库已停止维护,所以新的库叫 Pillow,通过 pip install pillow 安装,但在使用时仍然是 import PIL
  2. 默认的字体不支持中文,因此需要提供字体文件并指定。py2 也不支持中文,需要额外使用 freetype 库。


除了 PIL 库,OpenCV 库的 putText 方法也可以实现类似功能,但缺少对中文的支持:


import cv2
font = cv2.FONT_HERSHEY_SIMPLEX
im = cv2.imread('showme.jpg')
img=cv2.putText(im, 'Talk is cheap. Show me the code.', (50, 620), font, 1.5, (0,0,0), 3)
cv2.imwrite("showme_out.jpg", img)


期待在下一期中看到你的代码!




  • 如需了解视频课程及答疑群等更多服务,请号内回复 码上行动
  • 代码问题请在论坛 bbs.crossincode.com 上发帖提问
  • 点击文章最下方的“阅读原文”,查看更多学习资源
  • 别忘了将我们的文章转发朋友圈或在知乎上为我们的专栏点赞,你们的支持将会让编程教室做得更好:)


推荐阅读:

朋友圈 | 电影票 | 百万关注 | 技术宅 | 火车票 | 单词表 | 押韵工具 | 新手建议 | Python就业

相关文章
|
9天前
|
机器学习/深度学习 人工智能 运维
江帅帅:科学提升认知方法之贝叶斯公式
江帅帅:科学提升认知方法之贝叶斯公式
15 0
|
18天前
|
算法 数据可视化 数据挖掘
JCR一区10.9分|单细胞:有一手数据的肿瘤课题组怎么冲高分文章
这篇文章介绍了在《肿瘤免疫疗法》杂志上发表的一项研究,该研究利用单细胞RNA测序技术揭示了肝细胞癌(HCC)中FABP1(脂肪酸结合蛋白1)依赖的免疫抑制环境。研究分析了II期和III期HCC患者样本的免疫细胞,发现FABP1在III期HCC的肿瘤相关巨噬细胞(TAMs)中过度表达,并与免疫抑制有关。FABP1与PPARG(过氧化物酶体增殖物激活受体伽玛)相互作用,促进了HCC中的脂肪酸氧化,进而影响免疫应答。
28 0
|
27天前
|
机器学习/深度学习 文字识别 数据挖掘
文献速读|别人家的孟德尔随机化,全基因组纯生信30分Nature子刊
Nature Genetics上的一篇高影响力(IF=30.8)文章利用孟德尔随机化分析了暴食症(BED)的遗传基础。研究通过机器学习预测个体患BED概率,进行全基因组关联研究,识别了与铁代谢相关的基因位点,如HFE、MCHR2、LRP11及APOE。这些发现揭示了BED的遗传信号与铁代谢的关联,为理解这种疾病的病理生理学提供了新见解,并为治疗研究指明方向。文章中还包括多个图表展示分析结果。读者可以通过后台回复特定代码获取文献。
21 0
|
9月前
|
决策智能
博弈论第十集总结
博弈论第十集总结
35 0
|
9月前
|
决策智能
博弈论第七集总结
博弈论第七集总结
56 0
|
9月前
|
决策智能
博弈论第三集总结
博弈论第三集总结
34 0
|
9月前
|
决策智能
博弈论第九集总结
博弈论第九集总结
46 0
|
9月前
|
决策智能
博弈论第四集总结
博弈论第四集总结
26 0
圣彼得堡悖论
圣彼得堡悖论
55 0
|
存储 算法 决策智能
博弈论(二)
复习acwing算法基础课的内容,本篇为讲解数学知识:博弈论,关于时间复杂度:目前博主不太会计算,先鸽了,日后一定补上。
72 0
博弈论(二)