从概率分布做出选择

choices的Python项目详细描述


PDist的设计使其易于制作 事情以可能的方式发生。为密钥提供 附加相关概率,然后调用结果 当您需要新值时。

>>> mood = PDist({'happy': 0.3, 'neutral': 0.6, 'sad': 0.1})
>>> mood()
'happy'
>>> mood()
'neutral'

您可以检索如何应用这些值的分布 通过访问PDist.distribution属性:

>>> mood.distribution
[('happy', 0.3), ('neutral', 0.6), ('sad', 0.1)]

除了提供指定概率的指令外,您还可以 发送列表/元组列表。这允许不可散列 要使用的类型。这意味着您可以提供 用作键的函数:

>>> def grumpy(news):
...    return ':/'
>>> def happy(news):
...    return ':)'
>>> react = PDist([(grumpy, 0.7), (happy, 0.3)])
>>> reaction = react()
>>> reaction("We're getting married!")
':/'

您不限于将输入变量添加到1。为了 例如,如果您只有一个计数图,并且希望从该样本计算概率分布,那么您也可以提供:

>>> spotted = {'geese': 0, 'ducks': 12, 'sparrows': 4, 'other': 39}
>>> bird_pdist = PDist(spotted)
>>> bird_pdist.distribution
[('geese', 0.0), ('sparrows', 0.07272727272727272), ('ducks', 0.21818181818181817), ('other', 0.7090909090909091)]

支持检索特定密钥的概率。然而, 搜索策略效率很低,可能不应该使用 在交互式python shell之外。

>>> bird_pdist['geese']
0.0

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
未绘制java OpenGL顶点   swing无法在Java框架中设置文本   java使用xmemcached客户端访问AWS ElastiCache   java将元素添加到默认arraylist   java从给定位置向后逐个字符地读取文件   java将为此处显示的代码创建多少个对象?   Java异步返回CompletableFuture   java在滚动视图中显示图像   我想为用Netbeans开发的Java项目创建安装程序,并使用Mysql Xampp   java是否可以将COUNT与不同的JPA投影一起使用?   java如何定制javafx。场景图表NumberAxis用于更改20个主要记号的硬编码上限   javajavax。xml。ws。WebServiceException:无法访问WSDL   Jboss中的java多线程   java类不是抽象类,并且不重写抽象方法actionPerformed(ActionEvent)   基于java Spring安全令牌的身份验证   java如何在Spring MVC的自定义验证器中从属性文件中读取参数值   使用OpenCV和java在Android中点击获取图像维度?   java无法解析为变量解析。通用域名格式