我正在尝试开发一个程序以允许在图表中可视化大数据。基本上,这个想法是我可以输入一个巨大的数据集并输出一个折线图,我可以在其中实际看到趋势。
这是我的想法(请让我知道是否已经在 R 或包中内置了这样的算法,因为我意识到这是一种非常基本或“原始”的聚合数据方式。我也不想使用sample()
,因为我专门寻找数据的趋势。我意识到在这种情况下,总是需要在数据的准确性和数据表示的易用性之间进行权衡。):
假设我有一个包含 10,000 个数字行(表示变量的列)的标准 csv 数据集。我想创建一个结果数据集,该数据集采用这个巨大的数据集并将其分成 20-30 个 bin,每个 bin 代表一个数据点,它是大数据集中一定数量的数据点。例如,如果我有 10 个 bin,每个 bin 将是 1,000 个数据点的平均值。
这是我的代码:
average <- function(dataf)
{
numericdata <- dataf[,sapply(dataf,is.numeric)]
***mean(numericData, trim = 0, na.rm = TRUE)
}
x <- names(numericData)
real <- ddply(diamonds, .(x), average)
***我不知道在这里做什么。这是我想将 numbericdata 分成一定数量的 bin 的地方,其中每个 bin 中的数据将被平均。
另一个重要说明是,我输入的大多数数据集都有时间变量(这就是我提到折线图的原因)。该mean()
函数仅适用于数字数据,那么我如何平均时间列呢?通过平均,我的意思是时间列采用YYYY-MM-DD格式,我可以聚合天数并按月 (YYYY-MM) 绘制数据。如果是这种情况,那么我什至不必担心平均其他列!
我怎样才能做到这一点?
感谢您的任何意见,很抱歉发了这么长的帖子,我觉得我需要提供所有必要的信息。