r - R中的密度直方图
问题描述
我是 R 和概率统计的新手。我有一个关于直方图的问题......
hist(rbinom(10000, 10, 0.1), freq=FALSE)
它显示了我不清楚的直方图:
如果 y 轴是密度,那么总数应该是 %100,我错了吗?
但在直方图中,我可以看到它大于 %100。
解决方案
函数hist
返回一个列表对象,其中包含回答问题所需的所有信息。
我将设置 RNG 种子以使示例可重现。
set.seed(1234)
h <- hist(rbinom(10000, 10, 0.1), freq=FALSE)
str(h)
#List of 6
# $ breaks : num [1:11] 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 ...
# $ counts : int [1:10] 3448 3930 0 1910 0 588 0 112 0 12
# $ density : num [1:10] 0.69 0.786 0 0.382 0 ...
# $ mids : num [1:10] 0.25 0.75 1.25 1.75 2.25 2.75 3.25 3.75 4.25 4.75
# $ xname : chr "rbinom(10000, 10, 0.1)"
# $ equidist: logi TRUE
# - attr(*, "class")= chr "histogram"
相关列表成员是breaks
和density
。
breaks
是长度为 11 的向量,因此有 10 个 bin。density
是一个长度为 10 的向量,每个对应于一个 bin。
现在通过将箱长度乘以各自的密度来计算每个条的面积。
diff(h$breaks) # bins lengths
# [1] 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5
h$density*diff(h$breaks)
# [1] 0.3448 0.3930 0.0000 0.1910 0.0000 0.0588 0.0000 0.0112 0.0000 0.0012
总面积:
sum(h$density*diff(h$breaks))
#[1] 1
推荐阅读
- javascript - 如何使用 easyimage ckeditor 将照片上传到本地服务器?
- haskell - convert list of Tupel into list of lists
- android - 在 VS2017 中无法让 Admob 在我的 Cordova Android 应用程序中工作
- html - YouTube 视频上的敲除文本
- c - 使用凯撒密码在 C 中进行加密
- android - Exoplayer 正在使用 PageTransformer 删除预览
- android - 如何为安卓应用程序创建一个单独的目录,如whatsapp
- python - 如何检查浮点数列表加起来是否为整数?
- python - Python中高效的CSV阅读包?
- laravel - 如何使用关系在 eloquent(急切加载)中编写具有许多内部连接的 sql 查询?