【发布时间】:2018-04-26 12:06:25
【问题描述】:
在用于绘制直方图的hist 函数中,有一个参数include.lowest,默认值为TRUE。
据我了解,当中断设置为向量时,此参数应该允许保留或不保留最低中断的最低界限。
但如果我尝试,作为一个纯人为的例子,像这样的命令:
hist(c(1:100), breaks=c(1,2,10,50,100), include.lowest=FALSE)
我只是得到一个错误:
Error in hist.default(c(1:100), breaks = c(1, 2, 10, 50, 100), include.lowest = FALSE) :
some 'x' not counted; maybe 'breaks' do not span range of 'x'
这里发生的情况是 hist 不允许绘制不考虑完整数据 (x) 的图。如果 include.lowest 为 false,我的数据中的值“1”不会出现在直方图中的任何位置。但是既然如此,那么 include.lowest 是做什么用的呢?我看不到任何将其设置为 false 会产生任何影响而不触发错误的情况。
注意:在我的解释中,我假设我保留默认的right=TRUE,但如果right=FALSE,我应该只是最高突破而不是最低的相同行为,对吧?所以我认为它不会改变任何东西。
更多背景信息:我们正在开发一个使用 R 绘制图形的图形界面(它将成为 R++ 的一部分,当然,它会很棒)。当我们为所有直方图参数提供工具时,我们被困在了那个工具上。如果它对任何事情都没有用,只是一些旧的 hist 版本的遗留物,我们不妨不包括它,但如果它真的有用,我们也不想忘记它。
感谢大家的关注。
【问题讨论】:
-
在我看来它只是被留下了,因为为直方图进行分箱的 C 函数需要该参数。在
hist.default中进行分箱后会进行检查,以查看计数与观察次数的总和,这意味着您不能不在不引发错误的情况下计数;所以我想不出设置include.lowest = FALSE会改变直方图中的任何内容并且不会引发错误的场景,如你所说。