微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何创建我自己的概率密度函数并在 Python 中随机返回 x

如何解决如何创建我自己的概率密度函数并在 Python 中随机返回 x

我现在正在尝试创建一个函数,该函数将根据我自己的概率函数返回一个随机 x:

y = m/pow(x,n)

m 和 n 是由用户确定的值。

x 属于 [m,m+2]

我希望它可以根据可能性返回一个随机数 x。

就像打电话一样:

main: (global) a=0
func: arg=0,(global) a=1
main: (global) a=1

temp 将是一个随机数。

由于我的函数不是标准函数,所以我尝试使用 scipy.stats.rv_continuous 来创建一个 PDF 函数。 这是我的代码

   library(lattice)
   library(permute)
   library(vegan)
   library("ggplot2")
   library("ggdendro")
   library("dendextend")
   data(dune)
   d <- vegdist(dune)
   csin <- hclust(d,method = "aver")
   ggdendrogram(csin)
   rect.dendrogram(csin,3,border = 1:3)

正如你所看到的,我不知道如何将参数:m 和 n 发送到函数

我查看了 scipy.stats.rv_continuous 说明,但找不到解决方案。

有谁知道如何将参数发送到函数中?

或者有人知道实现我的目标的其他方法吗?非常感谢。

解决方法

使用逆变换采样来完成这项工作。 [1] :https://en.wikipedia.org/wiki/Inverse_transform_sampling

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。