【发布时间】:2016-04-30 03:36:27
【问题描述】:
这是一个部分编程,部分统计数学问题。 我有一个数据集,我想在其中获取最频繁的数字(模式),问题是我正在处理略有变化的值。
所以通常 {1,2,50,50,90} 最常见的数字是 50
但在我的情况下,数字如下所示: {1,2,49,50,51,90} 但结果仍然是 50
所以我的问题是如何有效地计算这个数字,这个数字有统计术语吗?
一些伪代码:
Float items.val[] = {1,2,49,50,51,90};
Float threshold = 4;
For (item in items) {
For (subitem in items){
Float dist=Distance(time,subitem)
If (dist < threshold){
item.dist += dist
}
}
}
Output=Sort(item.dist)[0]
【问题讨论】:
-
这个编程有什么关系?为什么结果是 50?
-
我需要写一个c++函数来计算它。这个数字是 50,因为我需要最频繁的数字,略有不同。因此,虽然我找不到最频繁的数字,但我可以找到“附近邻居”最多的数字
-
我投票结束这个问题作为题外话。阅读How to Ask。
-
@Amit 添加了一些伪代码来显示我想要做什么。
-
@duffymo 我可以看出这个问题并不完全是关于编程的,但它远非荒谬。
标签: c++ math statistics average