4-1 R语言函数 lapply
#lapply函数
#可以循环处理列表中的每一个元素
#lapply(参数):lapply(列表,函数/函数名,其他参数)
#总是返回一个列表
#sapply:简化结果
#结果列表元素长度均为1,返回向量
#结果列表元素长度相同且大于1,返回矩阵
> str(lapply)
function (X, FUN, ...)
> ?str
> x <- list(a=1:10,b=c(11,21,31,41,51))
> x
$`a`
[1] 1 2 3 4 5 6 7 8 9 10
$b
[1] 11 21 31 41 51
> lapply(x,mean)
$`a`
[1] 5.5
$b
[1] 31
> x <- 1:4
> lapply(x,runif)
[[1]]
[1] 0.5754994
[[2]]
[1] 0.3157821 0.7646459
[[3]]
[1] 0.2289793 0.1715219 0.6473963
[[4]]
[1] 0.634688171 0.326673566 0.007179751 0.687418686
> lapply(x,runif,min=0,max=100)
[[1]]
[1] 40.30112
[[2]]
[1] 31.06171 64.75319
[[3]]
[1] 45.190536 8.243788 98.328863
[[4]]
[1] 22.22585 18.63806 57.53813 54.82982
> x <- list(a=matrix(1:6,2,3),b=matrix(4:7,2,2))
> lapply(x,function(m) m[1,])
$`a`
[1] 1 3 5
$b
[1] 4 6
> x <- list(a=1:10,b=c(11,21,31,41,51))
> lapply(x,mean)
$`a`
[1] 5.5
$b
[1] 31
> sapply(x,mean)
a b
5.5 31.0
> class(sapply(x, mean))
[1] "numeric"
4-1 R语言函数 lapply的更多相关文章
- R语言函数化学习笔记6
R语言函数化学习笔记 1.apply函数 可以让list或者vector的元素依次执行一遍调用的函数,输出的结果是list格式 2.sapply函数 原理和list一样,但是输出的结果是一个向量的形式 ...
- R语言函数化学习笔记3
R语言函数化学习笔记3 R语言常用的一些命令函数 1.getwd()查看当前R的工作目录 2.setwd()修改当前工作目录 3.str()可以输出指定对象的结构(类型,位置等),同理还有class( ...
- R语言函数化编程笔记2
R语言函数化编程笔记2 我学过很多的编程语言,可以我写的代码很啰嗦,一定是我太懒了.或许是基础不牢地动山摇 1.为什么要学函数 函数可以简化编程语言,减少重复代码或者说面向对象的作用 2.函数 2.1 ...
- R语言函数化编程笔记1
R语言函数化编程笔记1 notes:有一个不错的网站叫做stack overflow,有问题可以从上面找或者搜索答案,会有大佬相助. 在github上面可以找到很多R的扩展包,如果自己额修改被接受,那 ...
- R语言︱函数使用技巧(循环、if族/for、switch、repeat、ifelse、stopifnot)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 后续加更内容: 应用一:if族有哪些成员呢?- ...
- R语言函数总结(转)
R语言特征 对大小写敏感 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母).不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头,第二个字符不允许是数字. 基本命令要么是表达 ...
- 【R笔记】R语言函数总结
R语言与数据挖掘:公式:数据:方法 R语言特征 对大小写敏感 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母).不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头,第二个字 ...
- 【转】R语言函数总结
原博: R语言与数据挖掘:公式:数据:方法 R语言特征 对大小写敏感 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母).不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头, ...
- r语言 函数
R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能.但是初学者往往认为编写R函数十分困难,或者难以理解.这里对如何编写R函数进行简要的介绍. ...
随机推荐
- Angular待办事项应用3
隔离业务逻辑 接着上一节,业务逻辑应该复古牛仔单独的service中,我们在todo文件夹中建立TodoService ng g s todo/todo 引入UUID包 todo中id要唯一,一个是采 ...
- python可变对象与不可变对象
可变/不可变对象定义 不可变对象 该对象所指向的内存中的值不能被改变.当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份后再改变,这会开辟一个新的地址,变量再指向这个新的地址. 可 ...
- C#观察者模式的应用与思考
1:项目场景 在设计数据表的时候有时候为了将来统计或查询的方便,我们会冗余一些字段.如有三张数据表,学校信息表.班级动态表.班级信息表. 班级动态由学校老师所发,可以进行评论点赞等操作,为了提升这种非 ...
- Android开发之旅4:应用程序基础及组件
引言 为了后面的例子做准备,本篇及接下来几篇将介绍Android应用程序的原理及术语,这些也是作为一个Android的开发人员必须要了解,且深刻理解的东西.本篇的主题如下: 1.应用程序基础 2.应用 ...
- htm-文字标签和注释标签
文字标签:修改文字的样式 <font></font> 属性: size:文字的大小 取值范围 1-7,超出了7,默认还是7 color:文字颜色 两种表示方法 英文单词:re ...
- js时间与毫秒数互相转换(转)
[1]js毫秒时间转换成日期时间 var oldTime = (new Date("2017/04/25 19:44:11")).getTime(); //得到毫秒数 / ...
- mysqli返回受影响行数
参考链接:http://php.net/manual/en/mysqli.affected-rows.php /* update rows */ $mysqli->query("UPD ...
- NodeJs -- express 快速建站
直接上干货 1.新建一个目录来存放我们即将要做的东西: 2.win+R打开小黑框:进入到我们的目录下: 3.首先我们要全局安装Express框架:**在这一步之前要确保你本机上安装了node:** n ...
- 前端AMD、CMD和commonJs-前端知识
前端AMD和CMD是在模块化的基础上产生并且得到大幅度的引用的. AMD 即Asynchronous Module Definition(点击链接可以查看AMD面试题),中文名是异步模块定义的意思.它 ...
- 使用MaxCompute访问TableStore(OTS) 简明手册
摘要: 大数据计算服务 MaxCompute 能够提供强大的分析能力,而分布式 NoSQL 数据库表格存储在行级别上的实时更新和可覆盖性写入等特性,相对于 MaxCompute 内置表 append- ...