确定 R 中的嵌套级别?

2024-01-08

有没有一种简单的方法(即函数)来确定列表中的嵌套级别? 我知道有str可以用来获取此信息。但有没有什么东西可以简单地返回结果呢?我可以使用这样的函数来获取所有级别的名称(递归)吗?


一个小的递归函数可以为你做到这一点:

depth <- function(this,thisdepth=0){
  if(!is.list(this)){
    return(thisdepth)
  }else{
    return(max(unlist(lapply(this,depth,thisdepth=thisdepth+1))))    
  }
}

如果你有package:testthat,这是一个测试集:

l1=list(1,2,3)
l2=list(1,2,l1,4)
l3=list(1,l1,l2,5)

require(testthat)
expect_equal(depth(l1),1)
expect_equal(depth(l2),2)
expect_equal(depth(l3),3)

抱歉在变量名中使用小写 L。可读性失败。

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

确定 R 中的嵌套级别? 的相关文章

  • 从 R 中的向量中选择所有可能的元组

    我正在尝试用 R 编写一个程序 当给定一个向量时 将返回所有可能的tuples http en wikipedia org wiki Tuples该向量中的元素 例如 元组 c a b c c a b c 出租车 c a c c b c c
  • 将命名参数列表传递给函数?

    我想编写一个小函数来从适当的分布生成样本 例如 makeSample lt function n dist params values lt makeSample 100 unif list min 0 max 10 values lt m
  • 查找字典中列表的最大值

    我有一个字典 每个键后面都有一个存储的列表 看起来像这样 dict with values u New York u New York u NY datetime datetime 2014 8 13 0 0 10 u New York u
  • LDA with topicmodels,如何查看不同文档属于哪些主题?

    我正在使用 topicmodels 包中的 LDA 我已经在大约 30 000 个文档上运行它 获取了 30 个主题 并获得了主题的前 10 个单词 它们看起来非常好 但我想看看哪些文档属于哪个主题的概率最高 我该怎么做 myCorpus
  • numpy.histogram 的 hist 维度,密度 = True

    假设我有这个数组 A array 0 0019879 0 00172861 0 00527226 0 00639585 0 00242005 0 00717373 0 00371651 0 00164218 0 00034572 0 008
  • 计算每个唯一值出现的次数

    假设我有 v rep c 1 2 2 2 25 现在 我想计算每个唯一值出现的次数 unique v 返回唯一值是什么 但不返回它们的数量 gt unique v 1 1 2 我想要一些能给我的东西 length v v 1 1 25 le
  • 我无法下载 R 中的 reshape2 包 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我在尝试安装 R 包时收到此响应 gt installed packages reshape2 Package LibPath V
  • 纵向序列数据的三次样条方法?

    我有一个串行数据 格式如下 time milk Animal ID 30 25 6 1 31 27 2 1 32 24 4 1 33 17 4 1 34 33 6 1 35 25 4 1 33 29 4 2 34 25 4 2 35 24
  • 时间戳半小时窗口内字段的平均值

    我的数据框有列名Timestamp es看起来像 Timestamp es 2015 04 01 09 07 42 31 2015 04 01 09 08 01 29 5 2015 04 01 09 15 03 18 5 2015 04 0
  • 将数据框中的每个 x 个字符拆分为字符串

    我知道这里有一些关于每隔一段时间分割一个字符串的答案nth字符 例如this one https stackoverflow com questions 23208490 split each character in r and this
  • 将绘图调用拆分为多个块

    我正在编写一个图的解释 其中我基本上将在第一个块中创建图 然后描述该输出 并在第二个块中添加一个轴 然而 似乎每个块都会强制一个新的绘图环境 因此当我们尝试使用以下命令运行块时会出现错误axis独自的 观察 output html docu
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr
  • kernlab 中 SVM 训练之外的核矩阵计算

    我正在开发一种新算法 该算法可以生成修改后的核矩阵以用于 SVM 训练 但遇到了一个奇怪的问题 出于测试目的 我比较了使用 kernelMatrix 接口和普通内核接口学习的 SVM 模型 例如 Model with kernelMatri
  • R独特的列或行与NA无可比拟

    有谁知道如果incomparables的论证unique or duplicated 曾经被实施过incomparables FALSE 也许我不明白它应该如何工作 无论如何 我正在寻找一个巧妙的解决方案 以仅保留与另一列相同的唯一列 或行
  • 为什么 dplyr filter() 不能在函数内工作(即使用变量作为列名)?

    使用 dplyr 函数对数据进行过滤 分组和变异的函数 基本管道序列在函数之外工作得很好 这就是我使用真实列名称的地方 将其放入一个函数中 其中列名称是一个变量 并且某些函数可以工作 但有些函数则不能 尤其是 dplyr filter 例如
  • 使用 R 选择第一个非 NA 值

    df lt data frame ID c 1 1 1 2 3 3 3 test c NA 5 5 6 4 NA 7 3 NA 10 9 我想创建一个名为 value 的变量 它是每个单独 ID 测试的第一个非 NA 值 对于只有NA的个体
  • r 中训练和测试数据的最小最大缩放/归一化

    我正在创建一个函数 它将训练集和测试集作为其参数 最小 最大缩放 标准化并返回训练集并使用这些same最小值和最小 最大范围的值 标准化并返回测试集 到目前为止 这是我想出的功能 min max scaling lt function tr
  • ddply 和aggregate 之间的区别

    有人可以通过以下示例帮助我了解聚合和 ddply 之间的区别 数据框 mydat lt data frame first rpois 10 10 second rpois 10 10 third rpois 10 10 group c re
  • 相当于 min() 的 rowMeans()

    我在 R 邮件列表上多次看到这个问题 但仍然找不到满意的答案 假设我有一个矩阵m m lt matrix rnorm 10000000 ncol 10 我可以通过以下方式获得每行的平均值 system time rowMeans m use
  • 旋转 Markdown 的表格 pdf 输出

    我想将 pdf 上的表格输出旋转 90 度 我正在使用 Markdown 生成报告并kable循环显示表格 如果可以的话我想继续使用kable因为还有很多其他依赖于它的东西我没有包含在这个 MWE 中 这是一个简单的例子 使用iris数据集

随机推荐

  • 更改 3D 绘图的垂直 (z) 轴的位置

    我正在 Python 中使用 Matplotlib 绘制一些 3D 曲面图 并注意到一个恼人的现象 根据我设置视点 相机位置 的方式 垂直 z 轴在左侧和右侧之间移动 下面是两个例子 示例 1 轴左 http i imagebanana c
  • 如何在flutter中使用工作管理器运行后台进程?

    我想使用 Flutter Workmanager 我在 kt 中做了引用的配置 如下所示 package com example mybackprocess import be tramckrijte workmanager Workman
  • Android“后退”按钮操作

    我可以将默认 Android 后退 按钮的操作分配给另一个按钮吗 我的意思是 无需编写代码 是否有预定义的 返回 方法 Thanks 按钮添加的onClickonBackPressed public void onClick onBackP
  • 在命令行上获取 git-commit-ids

    跑步时git commit fixup beefca7e或者当在提交消息中引用先前的提交时 我必须在笨拙的工作流程中使用鼠标 我使用bash 打开一个新的终端选项卡 窗口 窗格 git log oneline graph 扫描列表以查找相关
  • 如何增加UIProgressView的高度

    我正在创造UIProgressView from nib 我想增加它的高度 但它固定为 9 对于iPad我需要增加它的高度 怎样才能做到呢 使用 CGAffineTransform 更改尺寸 CGAffineTransform transf
  • 哪个先出现——finally 还是 catch 块?

    考虑以下测试用例 public class Main static int a 0 public static void main String args try test System out println test2 catch Ex
  • 获取 og:image 元属性的最佳方法是什么[重复]

    这个问题在这里已经有答案了 我正在尝试在我的网站中显示 rss feed 链接 一切顺利 但需要很长时间才能获得og image财产通过使用file get contents 方法 还有其他方法可以获取元标记属性吗 Python 有助于更快
  • 如何将 JSONObject 转换为自定义 Java 类?

    在Java中 使用 json simple https code google com p json simple 我已经成功解析了使用 JSON stringify 在 JavaScript 中创建的 JSON 字符串 它看起来像这样 t
  • 所有 SuppressWarnings 值? [复制]

    这个问题在这里已经有答案了 如果有一个包含可以与 java 中的 SuppressWarnings 一起使用的所有值的列表 那就太好了 如果这些值取决于编译器 可以说 netbeans 中的 ant 那么 ant 不应该提供所有支持值的完整
  • 执行 expo build:ios 时 Apple Developer Portal 中的身份验证失败

    我正在尝试自动配置通过 Gitlab CI 使用 Expo 构建 iOS 应用程序 这是我正在使用的命令 expo login u expo user p expo pass expo build ios non interactive a
  • JSF MVC 框架中的 MVC 是什么组件?

    JSF MVC框架中谁是模型 视图和控制器 这取决于观点 双关语 在总体架构图中 您自己的 JSF 代码是V M 业务领域 服务层 例如EJB JPA DAO V 您的 JSF 代码 C FacesServlet 在开发人员图中 架构V又可
  • 为什么 ASCII 表中大写字母位于小写字母之前?

    在我的一次面试中 面试官问我为什么ASCII表中大写字母在小写字母之前 我在google com上搜索但没有找到任何结果 有人能给我答案吗 多谢 我只是猜测 但我想这是因为最早的字符集根本没有小写字母 Baudot 电报码只有 5 位 CD
  • 从图像文件夹加载数组 - xcode

    我在将图像从文件加载到数组中时遇到一些问题 我使用了我在这里找到的问题的组合 但我没有想法 我对 Objective C 很陌生 对其余的都生疏了 我的 viewDidLoad 只是调用我的 showPics 方法 并且为了测试目的 我让
  • 如何在map函数中使用useEffect?

    我在 Firebase 中有两个表 Vouchers 和 ClaimedVouchers 我正在尝试显示未出现在 ClaimedVouchers 表中的优惠券 因此 我有一个查询获取所有优惠券 然后另一个查询检查它们是否已被认领 如果已认领
  • docker数据量与挂载的主机目录

    我们可以在docker中拥有一个数据卷 docker run v path to data in container name test container debian docker inspect test container Moun
  • 如何结合 constexpr 和矢量化代码?

    我正在为 x64 和 neon 开发 C 内在包装器 我希望我的函数是 constexpr 我的动机类似于Constexpr 和 SSE 内在函数 https stackoverflow com questions 51880079 con
  • 如何让 foo.somedomain.com 由 appengine 上的 myapp.appspot.com/foo 处理

    这就是我想要实现的目标 http foo somedomain com http foo somedomain com被处理http myapp appspot com foo http myapp appspot com foo 谷歌应用
  • Python 值错误:没有足够的值来解压

    代码中出现以下错误 不确定这意味着什么或我做错了什么 只是尝试将三个列表值初始化为空集合 nba nfl mlb ValueError not enough values to unpack expected 3 got 0 问题是 左侧值
  • Nokogiri 支持哪个版本的 xpath?

    我找不到 Nokogiri 支持的 xpath 版本的官方声明 有人可以帮我吗 事实上 我想提取一些具有以指定子字符串开头的属性的元素 例如 我想获得所有Book元素具有category属性以字符开头C 如何使用 nokogiri 做到这一
  • 确定 R 中的嵌套级别?

    有没有一种简单的方法 即函数 来确定列表中的嵌套级别 我知道有str可以用来获取此信息 但有没有什么东西可以简单地返回结果呢 我可以使用这样的函数来获取所有级别的名称 递归 吗 一个小的递归函数可以为你做到这一点 depth lt func