我正在尝试将大型数据集转换为在flowstrates包内进行分析所需的格式。
我目前拥有的是一个包含出发地和目的地点的大文件(600k旅行)。
格式有点像这样:
tripID Month start_pt end_pt
1 June 1 3
2 June 1 3
3 July 1 5
4 July 1 7
5 July 1 7
我需要能够生成的文件是按照单位时间(比如几个月)计算行程数的文件,格式如下:
start_pt end_pt June July August ... December
1 3 2 0 5 9
1 5 0 1 4 4
1 7 0 2 0 0
很容易按月对数据进行预分段,然后为每个源 - 目标对生成计数,但是将它们全部重新组合在一起会导致各种问题,因为每个预先分段的数据块都有很大不同大小。所以我似乎需要立即对整个数据集执行此操作。
有没有用于进行此类处理的软件包?在SQL或SQLite等方面做这件事会更容易吗?
提前感谢您的帮助。
答案 0 :(得分:3)
您可以使用reshape2
包来轻松完成此操作。
如果您的数据是dat
,
library("reshape2")
dcast(dat, start_pt+end_pt~Month, value.var="tripID", fun.aggregate=length)
这为每个start_pt
/ end_pt
/ Month
组合提供了一个条目,其值为该组合的多少个案例(tripID
的长度为{{1}}那套)。