1
我有数据在TB中。因此,当我无法同时加载所有数据时,标准pandas
和numpy
程序(group-by
,mean
,histogram
等)将不起作用。大数据方法:数据时刻的迭代(块式)计算
我的数据来自pandas.HDFStore.select
,它可以返回一个可变块大小块的迭代器。
现在我需要的是如何基于迭代方法计算数据矩的方法。
的期望值是直截了当:
n, mean = 0, 0
for chunk in iterator:
nCurrent = len(chunk)
meanCurrent = chunk['variable'].mean()
mean = (n * mean + nCurrent * meanCurrent)/(n + nCurrent)
n += nCurrent
但是目前还不清楚一般的方法是什么。我怎样才能做到这一点高阶时刻?
此外,我有兴趣绘制分布。说我决定去直方图。在开始时不知道分配的限制,很难创建垃圾箱。我是否首先需要遍历整个发行版以获取最小值和最大值,然后创建箱并开始计数?还是有更好的方法?