在模拟中,我产生一个非常大的数字向量,我想在直方图中显示。不幸的是,只要我要求矢量,我的RAM就不允许使用矢量。 (10 ^ 10个条目)
因此,我将仿真放在一个循环中,该循环产生几个较短长度的较小矢量。
它尝试了hist函数和hist $ counts的求和,但是分箱不断变化,这使得求和不可能(对我来说...)
现在,我搜索了一个逐级处理这些较小向量的小工具。
有人可以帮忙吗?在R中这可能吗?我被困住了……感谢所有花时间阅读本文的人!
答案 0 :(得分:2)
如果我理解正确,则您的问题是直方图箱正在更改。因此,自然的解决方案是使用breaks
函数的hist
参数修复垃圾箱。为了获得更好的性能,您可以设置plot = FALSE
并只收集每个零件的箱数。
答案 1 :(得分:0)
您可以通过库 dplyr 的函数count()
获得直方图所需的信息。
让我们说数字向量的值范围是1到100。首先,您必须定义存储桶:1-10、11-20,...
然后,在循环内并使用较小的向量,将函数cut()
与参数breaks =
一起使用,以将数字向量转换为分类向量。使用count来计数每个存储桶中的值数。
在循环结束时,合并所有获得的计数。