apply函数族简介

2023-11-10

apply函数

  • 沿着数组的某一维度处理数据。例如:将函数用于矩阵的行或列;虽然与for/while循环的效率相似,但只用一句话就可以完成
  • 参数: apply(数组,维度,函数/函数名)
x<-matrix(1:16,4,4)
apply(x,2,mean)

[1]  2.5  6.5 10.5 14.5
x<-matrix(rnorm(100),10,10)
apply(x,1,quantile,probs=c(0.25,0.75))

lapply函数

  • 可以循环处理列表中的每一个元素
  • 参数: lapply(列表,函数/函数名,其他)
  • 总是返回一个列表
x<-list(a=1:10,b=c(11,21,31,41,51))
lapply(x,mean)              #若x不是一个列表,R会将其强制转换为列表

$a
[1] 5.5

$b
[1] 31

sapply函数

  • 结果列表元素长度均为1,返回向量
  • 结果列表元素长度相同且大于1,返回矩阵(若长度不相同,则不能简化,即依然为列表)
x<-list(a=1:10,b=c(11,21,31,41,51))
sapply(x,mean)

  a      b
5.5   31.0

mapply函数

  • lapply的多元版本
  • 参数: mapply(函数/函数名,数据,函数相关的参数)
mapply(rep,1:4,4:1)

[[1]]
[1] 1 1 1 1
[[2]]
[1] 2 2 2
[[3]]
[1] 3 3
[[4]]
[1] 4

tapply函数

  • 对向量的子集进行操作
  • 参数: tapply(向量,因子/因子列表,函数/函数名)
x<-c(rnorm(5),runif(5),rnorm(5,1))
f<-gl(3,5)
tapply(x,f,mean)

         1          2          3 
-0.4793135  0.6472551  0.8236216
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

apply函数族简介 的相关文章

随机推荐

  • 随机数产生函数总是产生相同随机数的原因

    1 没有设置随机数种子 下面的程序直接调用rand 函数 结果产生的20个随机数虽然各不相同 但是每次运行得到的20个随机数与上次运行的结果都是一样的 就是因为没有设置随机数种子 虽然程序运行过程中可以产生不同随机数 但是下次运行产生的随机
  • protobuf-gen-lua 编译dll文件

    vs 创建dll空项目 引入protobuf gen lua工程里的pb c文件 修改原程序 1 ifndef WIN32 2 include
  • 机器学习——聚类——密度聚类法——OPTICS

    目录 理论部分 1 1 提出背景 1 2 OPTICS算法 1 2 1 基本概念 1 2 2 算法流程 1 2 3 优点 1 2 4 缺点 1 3 其它算法 代码部分 2 1 自行实现 2 2 sklearn实现 理论部分 1 1 提出背景
  • 33.输入捕获原理与配置

    输入捕获原理与配置 参考资料 STM32Fx开发板 STM32Fx开发指南 HAL库版本 第x章 输入捕获实验 STM32Fxx官方资料 STM32Fxx中文参考手册 第x章 通用定时器 笔记基于正点原子官方视频 视频连接https www
  • Face++人脸识别之情绪识别、视线估计

    1 定义 什么是情绪识别 是指分析识别图片中人脸的各类情绪并返回该人脸在各类不同情绪上的置信度分数 某种情绪的置信度分数越高 则可认为此种情绪与人脸真实情绪越接近 目前 Face 能够识别愤怒 厌恶 恐惧 高兴 平静 伤心 惊喜等七类最重要
  • windows10系统下nextcloud服务的webdav网盘挂载方法

    目录 前言 一 下载挂载服务修复批处理文件 保存到本地并运行 二 复制网盘地址 并挂载网盘 三 webdav网盘挂载成功 前言 许多朋友都有使用过网盘 像比较大的百度网盘 天翼云盘等 但是也有不少小微企业希望搭建企业内部的私有网盘 这就需要
  • 为什么说 Apache APISIX 是最好的 API 网关?

    今天 我们可以通过手机和各种 APP 完成各种各样的事情 比如社交 网购等 这些行为的背后 API 起到了关键的作用 作为 API 的使用者 我们并不关心 API 的稳定 安全和高效 但是通过 API 提供数据服务的企业则需要选择一个合适的
  • 思科模拟器实现Telnet和SSH远程管理

    思科模拟器实现Telnet和SSH远程管理 Telnet实现远程管理 明文传输 安全性不高 SSH实现远程访问 密文传输 前提 1 要保证设备之间能够进 2 设置enable密码 Telnet实现远程管理 明文传输 安全性不高 R0的配置
  • git生成ssh密钥详细步骤

    首先右键点击电脑桌面 点击 git bash here 打开git命令窗口 如果git用户名和邮箱等已经完成配置 则跳过此步骤 直接操作第3条 假如没有配置 继续如下操作 1 在命令窗口配置用户 输入命令 git config global
  • python如何实现监听微信应用新消息通知中心弹窗提醒

    可以使用第三方库如 itchat 来实现对微信应用新消息通知中心弹窗提醒的监听 首先需要安装 itchat 可以使用 pip 安装 pip install itchat 然后可以使用 itchat 提供的相关接口来登录微信 并设置消息处理回
  • OpenStack自动化安装部署实战(附OpenStack实验环境)

    packstack是openstack自动化安装工具 packstack程序中写入了openstack的安装过程 可以自动化对服务器进行openstack软件包的安装 packstack可以在answer file设置安装参数 在安装时 p
  • 在个人电脑上部署ChatGLM2-6B中文对话大模型

    简介 ChatGLM2 6B 是清华大学开源的一款支持中英双语的对话语言模型 经过了 1 4T 中英标识符的预训练与人类偏好对齐训练 具有62 亿参数的 ChatGLM2 6B 已经能生成相当符合人类偏好的回答 结合模型量化技术 用户可以在
  • 5、特征选择(filter):方差分析(ANOVA)

    方差分析ANOVA特征筛选 一 方差分析 Analysis of Variance 简称ANOVA 基本原理 二 连续变量和离散变量的方差分析 2 1 提出假设 2 2 采集数据 2 3 设计统计量 2 4 事件发生概率计算与统计推断 三
  • win hook codeproject

    http www codeproject com Articles 32131 Dynamically Add Edit Environment Variables of Remo
  • 【蓝桥杯Python】2023.2.5-成绩统计

    题目描述 小蓝给学生们组织了一场考试 卷面总分为 100 分 每个学生的得分都是一个 0 到 100 的整数 如果得分至少是 60 分 则称为及格 如果得分至少为 85 分 则称为优秀 请计算及格率和优秀率 用百分数表示 百分号前的部分四舍
  • 吴恩达ChatGPT《LangChain for LLM Application Development》笔记

    基于 LangChain 的 LLM 应用开发 1 介绍 现在 使用 Prompt 可以快速开发一个应用程序 但是一个应用程序可能需要多次写Prompt 并对 LLM 的输出结果进行解析 因此 需要编写很多胶水代码 Harrison Cha
  • 【Python数据挖掘课程】六.Numpy、Pandas和Matplotlib包基础知识

    前面几篇文章采用的案例的方法进行介绍的 这篇文章主要介绍Python常用的扩展包 同时结合数据挖掘相关知识介绍该包具体的用法 主要介绍Numpy Pandas和Matplotlib三个包 目录 一 Python常用扩展包 二 Numpy科学
  • RabbitMQ中重试机制的坑

    当我们消息消费失败的时候 可以进行重试 虽然SpringAMQP集成了retry机制 但是发现使用过程有点坑 等会细说 重试机制使用场景 1 如果是业务代码 比如空指针之类的异常那重试机制其实没什么用 2 如果是调用第三方系统 网络抖动之类
  • 二叉树遍历的非递归算法

    非递归的算法主要采用的是循环出栈入栈来实现对二叉树的遍历 下面是过程分析 以下列二叉树为例 图片来自懒猫老师 数据结构 课程相关内容 1 前序遍历 前序遍历的顺序为 根结点 gt 左子树 gt 右子树 基本过程 1 访问根结点 将根结点入栈
  • apply函数族简介

    apply函数 沿着数组的某一维度处理数据 例如 将函数用于矩阵的行或列 虽然与for while循环的效率相似 但只用一句话就可以完成 参数 apply 数组 维度 函数 函数名 x lt matrix 1 16 4 4 apply x