最近工作中需要处理一个实际的问题:
找出几类产品(实际上一共是10类),历史上所有日销量的极大值还有各种分位数。
处理好的表字段只有两个:产品类型,日销量。共1600万条。
本来很简单,想着用sql做个分组,公式聚合一下就完事了。估摸着10分钟肯定能搞定。
只可惜,公司用的mysql库,并没有内置中位数函数median()。
那怎么办呢?
导出来用excel吧,之前100万条数据的时候,我就分产品导出来,然后用excel搞10次。对,就是这么效率低下。胜在不用在mysql里写复杂的sql逻辑,半个小时搞定了。
可是现在,1600万条呀。excel承载不了这么大的重任,分分钟撂挑子。不,它连打开都不能。
194M的CSV。
于是,只能用好久没用的R语言了。
以下是步骤:
1、先导入数据(几秒钟搞定)
data3<-read.csv("abc0702.csv",as.is = TRUE, encoding = 'UTF-8')
不加encoding = 'UTF-8'中文会乱码。
原始数据大概长这样ÿ