我想将函数的结果分为 2 个(或 3 个)类别。
我有一个函数效率 = f(重量,速度,#refueling_stops),它接受 3 个输入参数,输出告诉我卡车的“效率”有多高。我的目标是让效率最低的卡车远离道路。但是,我不知道要保留哪辆卡车,要拒绝哪辆卡车。换句话说,我想将函数的所有可能输出值划分为“保留”类别或“拒绝”类别(或“介于”类别)。此外,我无法评价我的决定有多合适,因此我画线的点或多或少是任意的。尽管如此,我正在寻找一种基于科学的方法来解决这个问题。
这种问题有名字吗?
到目前为止,我偶然发现了集群(kmeans 和自然休息/Jenks),这对我来说是全新的。另外我读到我的问题可能类似于将彩色图像转换为黑白(和灰色)。但我不知道这个过程的当前做法是什么。
到目前为止,我已经计算了我的函数的所有可能结果。生成的一维数组的直方图和 PDF 如下所示:

然后我通过 R 将它们分成 2 个(或 3 个)类别:
library(classInt)
x <- read.table("all_possible_outcomes")
classIntervals(b, n=2, style = "kmeans")
classIntervals(b, n=3, style = "kmeans")
现在我很好奇这种解决我的问题的方法是否是当前的方法,或者如果不是,那么最佳实践是什么?我想我正在寻找的是某种确认使用集群是合适的。如果没有,你能想到什么替代方案?