lapply 适用于数组还是单个元素?

2023-12-13

我对 lapply 是否适用于列表或向量有点困惑。请参阅下面的两个示例

  1. 这里,均值函数应用于数字数组,即 1 到 5

    x = list(a=1:5, b=rnorm(10))
    x
    
    #$a
    #[1] 1 2 3 4 5
    #
    #$b
    #[1] -0.57544290  0.51035240  0.43143241 -0.97971957 -0.99845378
    #[6]  0.77389008 -0.08464382  0.68420547  1.64793617 -0.39688809
    
    lapply(x,mean)
    #$a
    #[1] 3
    # 
    #$b
    #[1] 0.1012668 
    
  2. 但在这里,runif 函数应用于数组的每个单独元素

    x = 1:4
    
    lapply(x,runif)
    #[[1]]
    #[1] 0.5914268
    
    #[[2]]
    #[1] 0.6762355 0.3072287
    
    #[[3]]
    #[1] 0.8439318 0.8488374 0.1158645
    
    #[[4]]
    #[1] 0.8519037 0.8384169 0.2894639 0.4066553
    

我的问题是,lapply 到底有什么作用?数组还是单个元素?又如何根据功能正确选择呢?


lapply将在定义 R 对象结构的最高级别上工作。

如果我有 4 个单独的整数,lapply将作用于每个整数:

x <- 1:4

lapply(x, identity)
#[[1]]
#[1] 1
#
#[[2]]
#[1] 2
#
#[[3]]
#[1] 3
#
#[[4]]
#[1] 4

然而如果我有一个listlength==2 每个包含 2 个值,lapply将作用于每个列表对象。

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

lapply 适用于数组还是单个元素? 的相关文章

随机推荐

  • OleDB更新命令不改变数据

    我使用 Microsoft Access 文件作为数据库 我没有问题SELECT and INSERT查询 但当我尝试UPDATE 数据库中的记录不会改变 下面是我用来运行更新的代码 调试日志中没有异常或错误 cnn new OleDbCo
  • Angularjs ng-show 方法被调用太多次[重复]

    这个问题在这里已经有答案了 我有一个 ng repeat 循环 它循环 3 个事件 在每个事件中 我想检查登录的用户是否是与该事件关联的团队的玩家 问题是 我的代码正在进入is player 每次加载页面大约30次 这显然会导致问题 因为它
  • 如何在 AngularJS 中正确使用指令

    我正在使用 AngularJS 上的指令执行第一步 但该指令对我不起作用 我有一个ng repeat list ul li li ul 正在被过滤 scope activeFilter filterValue 我正在尝试创建ng after
  • CreateProcess 成功,但 GetLastError() 返回访问被拒绝

    由于返回值冲突 我有点困惑CreateProcess and GetLastError 当我使用CreateProcess 以类似于下面的方式 它成功并似乎完成了所需的任务 然而 GetLastError 仍然返回访问被拒绝 如果访问被拒绝
  • RecursionError:使用 pickle.load() 调用 Python 对象时超出最大递归深度

    首先 我知道已经就这个特定错误提出了多个问题 但我找不到任何解决该错误发生在我身上的精确上下文的问题 我还尝试了为其他类似错误提供的解决方案 但没有任何区别 我正在使用 python 模块pickle将对象保存到文件并使用以下代码重新加载它
  • 使用警报框询问用户输入

    我希望用户在警报框中输入一段文本 HTML
  • 如何在 ASP.NET MVC 应用程序中设置一个控制器操作的请求超时

    我想增加应用程序中特定控制器操作的请求超时 我知道我可以在整个应用程序的 web config 中执行此操作 但我宁愿仅在这一个操作上更改它 Web config 示例
  • Pytest:使用其他固定装置作为输入的固定装置进行参数化单元测试

    我是参数化和装置的新手 仍在学习 我发现了一些使用间接参数化的帖子 但根据我的代码中的内容 我很难实现 如果有任何关于我如何实现这一目标的想法 我将不胜感激 我的 conftest py 中有几个固定装置 它们向测试文件中的函数 get f
  • 在geom_point中为ggplot2中的负值和正值设置不同的颜色

    给定一个数据框如下 df lt data frame city c bj sh gz sz price c 12 7 5 6 pct c 2 3 5 4 4 stringsAsFactors FALSE Out city price pct
  • 新的 Ember 应用程序出现黑屏

    我是 ember 新手 正在做一个入门教程构建一个简单的应用程序 当我创建一个新应用程序并启动服务器时 我尝试访问本地主机页面 http 本地主机 4200 在我的浏览器中但页面是空白的 浏览器窗口标题是我的应用程序名称 但没有应有的 欢迎
  • 如何删除匹配的标签但保留 JQuery 内容

    我有这样的 HTML div div class a content1 div content 2 div class a b content 3 b div div 我想删除 class a 的 div 但保留它们的内容 我最初的尝试是
  • 使用合并排序计算反转[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 目前不接受答案 我用Python编写了一个合并排序程序 它运行得很好 但我修改了它来计算所涉及的反转次数 现在它给了我一个错误 这是我的代码 def merge list left righ
  • 调用未定义函数 session_start()

    我正在尝试使用 php 启动会话 但总是收到此错误 Fatal error Call to undefined function session start in www test test php on line 2 我的代码 复制表格h
  • Selenium moveByOffset 不执行任何操作

    我在 Linux Xubuntu 13 10 上使用 Firefox 28 0 运行最新的 selenium 2 41 我试图让 FirefoxDriver 将鼠标移到页面上 在我的测试中 我使用了有线网页 它有很多悬停激活的菜单 但是mo
  • Java中的逻辑运算符优先级

    我对此并不满意 http docs oracle com javase specs jls se7 html jls 15 html jls 15 22 它明确规定了以下内容 如果操作数表达式没有副作用 则每个运算符都是可交换的 and 这
  • VB.net Excel.worksheet().cells().Value

    尝试在 Excel 工作表中写入信息 但有一些奇怪的问题 我在谷歌上查看了信息 但没有结果 所以请帮忙 我添加引用Microsoft excel 14 0对象库 并导入 Microsoft Office interop 我需要从特定单元格获
  • 我可以使用哪些方法通过 Spotify 应用程序进行地理定位?

    Spotify Apps API 不允许 HTML5 地理定位 显然记录的 Location api 调用不起作用 正在从文档中删除 我可以使用哪些方法来对用户进行地理定位 查找网站访问者地理位置的解决方案及其建议http freegeoi
  • 变换后的宽度/高度

    应用后如何检索宽度和高度属性transform rotate 45deg 比如 旋转后 11x11 的正方形变成 17x17 Chrome 结果 但 javascript 仍然返回原始宽度 高度 10x10 我如何获得这个 17x17 您可
  • Powershell Golf:下一个工作日

    如何使用 powershell 查找下一个工作日 好吧 我的手机允许我设置哪些日子是工作日 但 Windows NET 不允许 所以我假设是周一到周五 注意 由于问题包括 高尔夫 我正在打高尔夫球 即尝试为脚本使用尽可能少的字节 结果代码不
  • lapply 适用于数组还是单个元素?

    我对 lapply 是否适用于列表或向量有点困惑 请参阅下面的两个示例 这里 均值函数应用于数字数组 即 1 到 5 x list a 1 5 b rnorm 10 x a 1 1 2 3 4 5 b 1 0 57544290 0 5103