我试图弄清楚R中hist函数中的正确参数是什么。遗憾的是,对于没有对我这样的统计数据有深刻理解的人来说,文档是不明确的。
stated online的文档是:
正确的逻辑;如果为TRUE,则直方图单元格为右关闭(左开)间隔。
右关(或左开)间隔是什么意思?
答案 0 :(得分:17)
当创建非分类数据的直方图(诸如pH,温度等)时,您需要指定称为" bins"的东西。每个bin都有一个名为interval的东西。例如,如果我有数据:
11 12 13 14 15 16 17 18 19
我可以创建5个具有右开,左闭合间隔的区间,如下所示:
1st bin: [10, 12)
2nd bin: [12, 14)
3rd bin: [14, 16)
4th bin: [16, 18)
5th bin: [18, 20)
这意味着第一个垃圾箱会#34;持有"值介于10和12之间,包括10但不包括12 。上面使用的区间符号是这样的简写:
1st bin: 10 ≤ x < 12
2nd bin: 12 ≤ x < 14
3rd bin: 14 ≤ x < 16
4th bin: 16 ≤ x < 18
5th bin: 18 ≤ x < 20
这意味着值11将进入第一个bin,但值12将进入第二个bin,等等.R将为您执行此binning过程,然后根据每个bin中有多少项绘制直方图。对于上述数据,除了第一个bin之外,你会得到一个相当不感兴趣(或有趣的,取决于你的期望)的直方图,这个直方图基本上都是扁平的。
以下示例说明了使用区间表示法时括号和括号的不同组合(假设x是实数行的元素):
(1, 4) --> 1 < x < 4 left-open, right-open
[3, 7) --> 3 ≤ x < 7 left-closed, right-open
(2, 9] --> 2 < x ≤ 9 left-open, right-closed
[5, 6] --> 5 ≤ x ≤ 6 left-closed, right-closed
请注意,假设您未使用the extended real number line
,则无法使用括号表示无穷大(-∞, ∞) --> -∞ < x < ∞
(-∞, 20] --> -∞ < x ≤ 20
[20, ∞) --> 20 ≤ x < ∞
(1000, ∞) --> 1000 < x < ∞
(-∞, ∞] --> Invalid
(41, ∞] --> Invalid
如果我想要左开,右闭的间隔,那么垃圾箱看起来像这样:
1st bin: (10, 12] i.e. 10 < x ≤ 12
2nd bin: (12, 14] 12 < x ≤ 14
3rd bin: (14, 16] 14 < x ≤ 16
4th bin: (16, 18] 16 < x ≤ 18
5th bin: (18, 20] 18 < x ≤ 20
看到区别?在这种情况下,现在值11和12将进入第一个bin。这可能会改变直方图的外观,具体取决于您对数据进行分区的方式。现在,这次你的直方图仍然几乎是平的但是现在第5个bin与其余的不同(其余的只有1个数据点而不是2个)。
现在,幸运的是,在R中你不必自己指定垃圾箱,但R很好地问你是否要让垃圾箱左关闭,右开([a, b)
)或左开,右关((a, b]
)。这就是你得到的差异&#34;对&#34;参数在hist()
函数中执行。
答案 1 :(得分:2)
默认值为right = TRUE,它给出了形式(a,b)的间隔。让我们举一个例子来看看这意味着什么。假设我们的数据的值为5。让我们也说直方图是使用断点3,4,5,6。问题是我们的值5应该落入哪个区间?如果我们使用right = TRUE,那么使用的实际区间是(3,4),(4,5),(区间符号(4,5)表示它包含4到5之间的所有值 - 它不包括实际值4但它确实包含值5.所以我们的数据点5落入这段时间。
如果我们使用right = FALSE,则间隔将具有[a,b]形式,因此使用相同的断点3,4,5,6,我们将具有间隔[3,4],[4,5] ,[5,6]。这次我们的数据点进入区间[5,6],因为这个区间包含5,而[4,5]不包含5。
基本上,'right'参数告诉R当数据点正好落在断点所在的位置时该怎么做。
答案 2 :(得分:1)
R对半直方图箱使用半开间隔。此选项控制每个半开区间中包含哪个左端点或右端点。