在R语言的帮助文档里,apply函数的功能是: Retruns a vector or array or list of values obtained by applying a function to margins of an array or matrix. 就是说apply把一个function作用到array或者matrix的margins(可以理解为数组的每一行或者每一列)中,返回值时vector.array.list. 简单的说,apply函数经常用来计算矩阵中行或列的均值.和值…
apply() apply(m,dimcode,f,fargs) m 是一个矩阵. dimcode是维度编号,取1则为对行应用函数,取2则为对列运用函数. f是函数 fargs是f的可选参数集 > z <- matrix(1:6, nrow = 3) > f <- function(x) { + x/c(2, 8) + } > apply(z,1,f) #f函数得到两个元素,则为几行,竖着来的 [,1] [,2] [,3] [1,] 0.5 1.000 1.50 [2,] 0…
为什么用apply 因为我是一个程序员,所以在最初学习R的时候,当成“又一门编程语言”来学习,但是怎么学都觉得别扭.现在我的看法倾向于,R不是一种通用型的编程语言,而是一种统计领域的软件工具.因此,不能用通用型编程的思维来设计R代码.在Andrew Lim关于R和Python的对比回答中,R是一种面向数组(array-oriented)的语法,它更像数学,方便科学家将数学公式转化为R代码.而Python是一种通用编程语言,更工程化.在使用R时,要尽量用array的方式思考,避免for循环.不用循…
(1)生成正态分布随机数: rnorm(n,mean,sd)     其中,n表示生成的随机数个数,mean表示正态分布均值,sd表示正态分布标准差 > rnorm(5,0,2)[1] -5.31147765 0.09634197 0.35276104 -1.94548466 0.54533883 (2)生成均匀分布随机数: runif(n,min,max)     其中,n表示生成的随机数个数,min表示均匀分布最小值,max表示均匀分布最大值 > runif(5,0,10)[1] 9.74…
R中的帮助文档非常有用,其中有四种类型的帮助 help(functionname) 对已经加载包所含的函数显示其帮助文档,用?号也是一样的. help.search('keyword') 对已经安装的包搜索关键词,用??号功能一样. help(package='packagename') 显示已经安装的包的描述和函数说明 RSiteSearch('keyword') 在官方网站上联网搜索 R语言的启动 R语言启动后会首先查找有无.Rprofile文档,用户可通过编辑.Rprofile文档来自定义…
当获取到原始数据时,我们通常的做法是对该数据进行分割成小片段,然后对各小片段进行计算统计,最后整合成最终的数据.这是统计学里数据处理的一般规律. R语言为我们提供了相应的函数来分别处理这三个阶段任务. 分割:split()和subset()函数. 计算:apply(),lapply(),tapply(),sapply() 整合:aggregate() 注意几点: 1.向量,矩阵,数组的长度就是它元素的个数,用length获取:而数据集,列表的长度则是它变量的个数,注意二者的不同. 实际上,向量和…
6. 数据转换 本章主要讲述apply系列函数:apply.lapply.sapply.tapply.mapply,以及姊妹函数by.split.适用于批量处理数据,而不许循环. 6.1 向量分组 用因子(分组因子)来标识元素的不同组: > groups <—split(x, f)             //x<—c(40,29,39),f<—factor(c(“A”,”B”,”A”)) 返回的是一个向量列表,列表中每个向量包含属于同一组的元素 > groups <—…
大家熟知的画图ggplot2包 library(ggplot2) #查看系统自带的qplot的函数演示 example(qplot) #R语言的基本对象 向量.矩阵.数组.数据框.列表 R语言的变量都是对象(包括函数),都有mode和lenght方法可以调用 #善用向量化的ifelse()函数 #R语言的下标从1开始,与C等语言不同 #R语言的矩阵元素默认按列存储 #善用apply, sapply, lapply(list apply)等函数,其中sapply(代表simplified appl…
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:apply族功能强大,实用,可以代替很多循环语句,R语言中不要轻易使用循环语句. 函数名 功能 特点 apply 按行.列运算均值.求和.众数等 简单运算 tapply=table apply 在apply之上加入table功能,可以分组汇总 table结合,可以分组汇总 lapply=list apply 都需要数据框格式,可以与l…
R语言︱数据集分组 大型数据集通常是高度结构化的,结构使得我们可以按不同的方式分组,有时候我们需要关注单个组的数据片断,有时需要聚合不同组内的信息,并相互比较. 一.日期分组 1.关于时间的包都有很多很好的日期分组应用. 2.cut()函数 cut(x, n):将连续型变量x分割为有着n个水平的因子 cut(x, breaks, labels = NULL, include.lowest = FALSE, right = TRUE, dig.lab = 3, ordered_result = F…