使用最小观察范围识别数值向量中最频繁的观察

如何解决使用最小观察范围识别数值向量中最频繁的观察

问题:

假设我有一个数值向量 x 的某个距离(在 R 中)的观测值。例如,它可能是许多人的投掷长度。

x <- c(3,3,7,8,12,15,20,30)
h <- hist(x,breaks = 30,xlim = c(1,30))

enter image description here

然后我想定义一组 S 的“选择器”(范围),选择尽可能多的我的观察,同时尽可能短的距离(成本是范围的总和在S)。每个选择器 si 范围必须至少为 3(其分辨率)。

示例:

在玩具数据 x 中,我可以放置 [6;8] 中的第一个选择器 s1,它将选择 4+2 个观测值(距离 7 和 8),使用 3 个距离并选择 6/总共 15 个观察结果([7;9] 会给出相同的结果,但为简单起见,我将选择器中点放在最大频率中)。接下来将添加 s2 [14;16](6 距离并选择 9/15)。总之,S 将按照以下步骤构建:

  1. [6;8] (3,6/15) #s1
  2. [6;8],[14;16] (6,9/15) #s2
  3. [3;8],[14;16] (9,12/15) #Extending s1(最便宜)
  4. [3;8],[12;16] (11,13/15) #Extending s2
  5. [3;8],[12;16],[29;31],(14,14/15) #s3
  6. [3;8],[12;20],(18,15/15) #Extending s2

当使用某个总距离(S 的总和)或当 S 覆盖了特定部分的数据时,将停止迭代。或者根据覆盖的数据部分绘制 S 的总和,然后从中做出决定。

对于非常大的数据(1,000,000s 距离空间中的 100,000s 聚类观察),我可能会通过增加允许的最小步长(高于 1,可能尝试 100)并降低分辨率(高于其 3,可以尝试 1000 次)。

由于它相当于最大化 density(x) 下的面积,同时最小化 x 的范围,我的直觉是可以使用 density() 和 {{1 }} 。也许它甚至是一个众所周知的最大化/最小化问题。

任何可以帮助我入门的建议将不胜感激。

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

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?