zoukankan      html  css  js  c++  java
  • R语言:数据的分割-计算-整合(split-apply-aggregate)

    当获取到原始数据时,我们通常的做法是对该数据进行分割成小片段,然后对各小片段进行计算统计,最后整合成最终的数据。这是统计学里数据处理的一般规律。

    R语言为我们提供了相应的函数来分别处理这三个阶段任务。

    分割:split()和subset()函数。

    计算:apply(),lapply(),tapply(),sapply()

    整合:aggregate()

    注意几点:

    1.向量,矩阵,数组的长度就是它元素的个数,用length获取;而数据集,列表的长度则是它变量的个数,注意二者的不同。

    实际上,向量和矩阵是特殊的数组,而数据集是特殊的列表。才表现出上述形式来。

    2.批处理函数apply簇:

    作用目标在每个元素上应用在子集合上应用
    array apply tapply
    list lapply(...) by

    apply和lapply作用在元素上,而tapply和by作用在子集合上。

    二,实际用法:

    tapply

    tapply(array, indices, margin, FUN=NULL, ...)

    indices中的值分组,把相同值对应下标的array中的元素形成一个集合,应用到FUN

    by

    by(dataframe, INDICES, FUN, ..., simplify=TRUE)

    by是针对数据集进行的,功能同taaply函数,INDICES的长度等于每列变量的长度,因此它是将数据集按照行进行分割。

    lapply

    lapply(list, FUN, ...)
    list上按照变量分组分别调用FUN,相当于apply。可以用于dataframe上,因为dataframe是一种特殊形式的list。

    具体使用方法参考:R语言apply函数簇使用方法

  • 相关阅读:
    vue事件处理器--v-on
    vue循环-- v-for
    node-Socket编程
    JsonWebToken
    Mongodb 数据库
    Nodejs库-EXPRESS
    yarn和npm的区别
    Vue学习笔记【22】——Vue中的动画(列表的排序过渡)
    Vue学习笔记【21】——Vue中的动画(v-for 的列表过渡)
    Vue学习笔记【20】——Vue中的动画(使用动画钩子函数)
  • 原文地址:https://www.cnblogs.com/zhuluqing/p/9625593.html
Copyright © 2011-2022 走看看