R Learning-swirl-lapply and sapply
来源:互联网 发布:sun.java 编辑:程序博客网 时间:2024/06/03 14:45
head(flags) 取flags数据集的前六行记录
dim(flags) 调取flags数据集的行数与列数
calss(flags) 识别flags数据集的格式format
[1] “data.frame”cls_list <- lapply(flags,class) 以list的形式呈现每个字段的属性
cls_list
$name
[1] “factor”
………
class(cls_list) cls_list的格式为list
[1]”list”
as.character(cls_list) 将cls_list 中的字段属性以向量的形式进行呈现。
[1] “factor” “integer” “integer” “integer” “integer” “integer” “integer” “integer” “integer” “integer”
…….
针对sapply,如果每个元素都是一样的字符,即不存在多个列表的时候,则sapply 为向量;如果对象为列表时,则sapply为矩阵。如果sapply不能识别对象中的内容,则只返回列表,与lapply的作用没有区别。
cls_vect <-sapply(flags,class) 将falgs中
class(cls_vect)
统计某个表中某个字段的个数:
sum(flags$oranges) 统计oranges下的总数
取某个报表中前多少行字段:取flags中第11:17字段的内容。
flags_colors <- flags[,11:17]
针对lapply(arg1,agr2),arg1表示本次处理的对象,agr2为函数名称(不用带括号)。
head(flag_colors)
red green blue gold white black orange
1 1 1 0 1 1 1 0
2 1 0 0 1 0 1 0
3 1 1 0 0 1 0 0
4 1 0 1 1 1 0 1
5 1 0 1 1 0 0 0
6 1 0 0 1 0 1 0
lapply(flag_colors,sum)
$red
[1] 153
$green
[1] 91
$blue
[1] 99
$gold
[1] 91
$white
[1] 146
$black
[1] 52
$orange
[1] 26
如果字段的内容都一致,则可以用sapply,则最终的结果可以以向量的形式进行展现。
sapply(flag_colors,sum)
red green blue gold white black orange
153 91 99 91 146 52 26
sapply(flag_colors,mean)
red green blue gold white black orange
0.7886598 0.4690722 0.5103093 0.4690722 0.7525773 0.2680412 0.1340206
注意:计算均值时,为0的数字也计算个数lapply(flag_shapes,range) range 函数返回flag_shapes中的最小值和最大值,当然只针对数值型变量。
$circles
[1] 0 4
$crosses
[1] 0 2
$saltires
[1] 0 1
$quarters
[1] 0 4
$sunstars
[1] 0 50
但是如果用sapply来调用的话,
shape_mat <- sapply(flag_shapes,range)
circles crosses saltires quarters sunstars
[1,] 0 0 0 0 0
[2,] 4 2 1 4 50
总结,一般sapply 会比lapply有更简化的内容,但是也会存在sapply无法识别的情况,这时跟lapply没有区别。
unique()函数返回不重复的值, unique_vals <-lapply(flags,unique),返回flags数据集中各字段下不重复项。
lapply返回的是list,sapply 返回的是数据集
lapply(unique_vals,function(elem)elem[2]) 针对数据集,对数据集中每一个列中,取每列第二个元素。
- R Learning-swirl-lapply and sapply
- swirl 10: lapply and sapply
- learning R with lapply and sapply(不懂)
- learning R with swirl-workspace and files
- learning R with swirl-dates and times
- apply lapply sapply等R函数
- R apply、tapply、lapply、sapply、mapply 说明
- R apply, lapply, sapply, mapply, tapply functions
- R中的apply、lapply和sapply
- Usingle apply, sapply, lapply in R
- learning R with swirl-vapply and tapply(不懂)
- R apply、tapply、lapply、sapply、mapply、table等函数
- learning R with swirl-vectors
- learning R with swirl-logic
- learning R with swirl-functions
- lapply &sapply note
- learning r with swirl -basic building blocks
- learning R with swirl-sequences of numbers
- 利用ssh登录服务器
- wxPython Cookbook (Chatper1)part 2
- C++基础之语句笔记
- 关于迭代和递归的思考
- 利用OpenCV画HSV的3D直方图
- R Learning-swirl-lapply and sapply
- 用户注册登陆查询界面
- //实现中等难度通讯录。需求: //1、定义联系人类Contact。实例变量:姓名(拼音,首字母大写)、性别、电话号码、住址、分组名称、年龄。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息
- Linux时间子系统之七:定时器的应用--msleep(),hrtimer_nanosleep()
- C/C++中关于qsort和sort函数的使用
- HDU 1022 Train Problem I
- 黑马程序员———Java编程基础之循环和函数
- 阿里机试题目_虚函数
- Scala入门到精通——第二十六节 Scala并发编程基础