【发布时间】:2019-10-13 01:21:20
【问题描述】:
我正在尝试为圆内的点生成一个分布,其中更多朝向中心,但对于甜甜圈形状
我可以生成一个均匀分布的甜甜圈形状 (1),或者一个圆形,其中有更多的点朝向中心 (2),但不能生成一个有这么多点朝向其内部边界的甜甜圈形状。
(1)
r = sqrt(runif(250, min = 0.25, max =1))
p = runif(250)
theta = p *2*pi
a = r * cos(theta) #coordinates for circle
b = r * sin(theta)
plot(a,b)
(2)
r = runif(250)
p = runif(250)
theta = p *2*pi
a = r * cos(theta)
b = r * sin(theta)
plot(a,b)
我最接近的尝试是修改程序 (2),其中 r 被限制在 0.5 和 1 之间,但这会删除最靠近中心的大部分点,并且在其内部没有那么多点。
【问题讨论】:
-
不,一点也不。
-
尝试独立生成 r 和 theta,然后让您的点为 (r, theta),theta 在 [0, 2 pi) 上具有均匀分布,而 r 在 [ 中具有支持的分布0.5, 1],接近 0.5 的密度更大。有很多这样的分布,一种是移位,截断指数。尝试首先从指数生成,然后从移位指数生成,最后是截断的移位指数。祝你好运,玩得开心,似乎是一个好问题。 PS。为了好玩,请查看有关“伯特兰问题”的 Wikipedia 文章。
标签: r random statistics probability