r数据了解当中的化整为零(split-apply-combine)策略_光环大数据培训.pdfVIP

r数据了解当中的化整为零(split-apply-combine)策略_光环大数据培训.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
r数据了解当中的化整为零(split-apply-combine)策略_光环大数据培训

光环大数据--大数据培训人工智能培训 R 数据分析当中的化整为零(Split-Apply-Combine)策略_光环大数据培训 什么时候我们需要使用到化整为零的策略呢?有以下三种情况: 数据需要分组处理 数据需要按照每行或者每列来处理 数据需要分级处理,和分组很类似,但是分级时需要考虑分级之间的关 系。 化整为零策略有点类似于由 Google 推广的 map-reduce 策略。当然 map-reduce 策略的基础是网格,而这 里的Split-Apply-Combine 的基础完全可以是单机,甚至不支持并行处理的 单机都可以。 然而,化整为零并不是一个很直观的编程过程。最直观的过程是使用 Loop 循环。这里使用一个例子来讲解 一下如何实现化整为零策略。在plyr 包中有数据ozone,它是一个三维矩阵 (24X24X72),其中最后一维72 是指的6 年12 个月每个月的结果。也就是ozone 是一个包括了连续72 个月 24X24 的三维矩阵数据。三维分 别是lat,long,time。我们需要由对时间robust linear model 之后的残基 光环大数据 光环大数据--大数据培训人工智能培训 residuals。 library(plyr) # need for dataset ozone library(MASS) # need for function rlm month - ordered(rep(1:12, length=72)) #set time sequence #try one set one - ozone[1,1,] model - rlm(one ~ month - 1); modelCall:rlm(formula = one ~ month - 1)Converged in 9 iterations Coefficients: month1 month2 month3 month4 month5 month6 month7 month8 month9 month10 month11 month12 264.3964 259.2036 255.0000 252.0052 258.5089 265.3387 274.0000 276.6724 277.0000 285.0000 283.6036 273.1964 Degrees of freedom: 72 total; 60 residualScale estimate: 4.45 deseas - resid(model) 现在我们对每一组数据都做相同的处理。首先使用 for loop,这样比较直 观 deseasf - function(value) rlm(value ~ month -1) #the function models - as.list(rep(NA, 24*24)) #prepare the variable dim(models) - c(24, 24) deseas - array(NA, c(24,24,72)) #prepare the variable dimnames(deseas) - dimnames(ozone) for (i in seq_len(24)) { #for loop for first dimension+ for(j in seq_len(24)) { #for loop for second dimension+ mod - deseasf(ozone[i, j, ]) #apply function+ models[[i, j]] - mod #save data+ deseas[i, j, ] - resid(mod) #get residure+ }+ } 接下来我们使用化整为零的策略。因为数据可以分成24X24 块来处理,每一 块都是单独运算,可以并行处

文档评论(0)

rachel + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档