我偶然发现了这一点,试图从一些数据中做一个随机有偏差的样本。我正在寻找适合 x^2 的简单分布,但是这里有一个人工制品,我无法完全理解。
这是一个 for 循环的片段,在 x^2 分布的数组中选择一个索引,然后在该索引位置递增计数器。
package main
import "time"
import "fmt"
import "math"
import "math/rand"
func main() {
rand.Seed(time.Now().UTC().UnixNano())
var arr [10]int
for i := 0; i < 5000; i++ {
rnd := rand.Float64()
tmp := rnd * rnd * 9
index := int(math.Floor(tmp + .5))
arr[index]++
}
fmt.Printf("%v", arr)
}
无论边界或迭代次数如何,绘制图形总是看起来像这样,最后有一个明显的“下降”。
这是我很难理解的。指数不应该一直符合曲线吗?
我怀疑与四舍五入有关的事情,但我现在正在寻找稻草。
慕运维8079593
呼啦一阵风
相关分类