R海拾遗-apply家族学习
时间:2022-07-24
本文章向大家介绍R海拾遗-apply家族学习,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
apply家族学习
概述
在实际的工作中,我们总要面对各种各样的数据结构处理,这些操作可以使用循环来完成,但是容易造成内存的占用,以前其实了解过这方面的函数,但是记不清,因此整理下 主要函数如下
- apply
- lapply
- sapply
- tapply
apply函数
apply(X, MARGIN, FUN, ...)
- X 处理的数据框
- MARGIN 1表示对行,2表示对列处理,c(1,2)表示对行列进行操作
- FUN 函数,可以为自定义函数,或者为内置函数
示例
# 使用iris数据集进行测试
data(iris)
# 求均值
apply(iris[,1:4],2,mean,na.rm=T)
# 结果
Sepal.Length Sepal.Width Petal.Length Petal.Width
5.843333 3.057333 3.758000 1.199333
lapply函数
lapply函数和apply函数的差别在于,lapply输出的为一个列表 参数方面少了margin
示例
x<-lapply(iris[,1:4],mean,na.rm=T)
# 因为输出的为list格式,因此一般情况下需要使用unlist函数进行分解
unlist(x)
sapply函数
Sapply函数返回的是一个向量,不过增加了两个参数
- simplify 如果为T,将输出结果数组化,否则为list
- use.NAMEs 如果为T,设置字符串为字符名
示例
sapply(iris[,1:4],mean,na.rm=T,simplify=F,use.NAMEs=F)
# 结果
$Sepal.Length
[1] 5.843333
$Sepal.Width
[1] 3.057333
$Petal.Length
[1] 3.758
$Petal.Width
[1] 1.199333
tapply函数
tapply函数一般对数据进行分组描述时使用
tapply(X, INDEX, FUN = NULL)
参数
-X: 一个对象,一般都是向量
-INDEX: 一个包含分类因子的列表
-FUN: 对X里面每个元素进行操作的函数
示例
data(iris)
# 对第一列进行分组求均值
tapply(iris[,1],iris$Species,mean)
# 结果
setosa versicolor virginica
5.006 5.936 6.588
结束语
其实关于apply函数的家族还有很多,这里只是了解了其中几个,其他的内容用到的概率不是很高。 peace & love
- Android自定义ViewGroup神器-ViewDragHelper
- Android 中常见的内存泄漏
- Android 高级自定义Toast及源码解析
- 环境配置:React Native 开发环境配置 For Android
- 美团多渠道打包方案详解,速度快到白驹过隙
- 下一代Android渠道打包工具
- 01 整合IDEA+Maven+SSM框架的高并发的商品秒杀项目之业务分析与DAO层
- 通俗易懂的分析如何用Python实现一只小爬虫,爬取拉勾网的职位信息
- 我的第一个小程序(Discuz! + 微信小程序)
- 微信小程序 wx.request 的封装
- 如何用Python爬虫实现百度图片自动下载?
- 以太坊智能合约开发入门
- lodash源码分析之baseFindIndex中的运算符优先级
- 分子对接简明教程 (一)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 快速学习-Nacos Config--服务配置
- C 库函数 - fread()
- pthread_join函数
- 快速学习-Sleuth--链路追踪
- pthread_cancel函数
- SAP WebClient UI开发工具中attribute文件夹展开的实现原理分析
- pthread_attr_init线程属性
- C语言可重入函数和不可重入函数
- 在SAP WebClient UI里显示倒数计时的UI
- 如何使用jMeter测试SAP OData服务并发访问时的性能
- 如何使用SAP HANA Studio的PlanViz分析CDS view性能问题
- 使用SAP C4C自定义BO association创建动态下拉列表
- 使用Express+TypeScript编写后台服务
- WPF 点击按钮时更改按钮样式界面效果的 XAML 实现方法
- ASP.NET Core 警惕可空类型开启之后模型校验失败