if-else 与 ifelse 与列表的比较

2023-12-08

为什么 if-else 结构和函数 ifelse() 的行为不同?

mylist <- list(list(a=1, b=2), list(x=10, y=20))

l1 <- ifelse(sum(sapply(mylist, class) != "list")==0, mylist, list(mylist))

l2 <-
if(sum(sapply(mylist, class) != "list") == 0){  # T: all list elements are lists
  mylist
} else {
  list(mylist)
}

all.equal(l1,l2)
#  [1] "Length mismatch: comparison on first 1 components"

来自 ifelse 文档:

 ‘ifelse’ returns a value with the same shape as ‘test’ which is
 filled with elements selected from either ‘yes’ or ‘no’ depending
 on whether the element of ‘test’ is ‘TRUE’ or ‘FALSE’.

因此,您的输入长度为 1,因此输出将被截断为长度 1。

您还可以通过一个更简单的示例来说明这一点:

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

if-else 与 ifelse 与列表的比较 的相关文章

  • 简单的数据框重塑

    我刚刚从长时间的写作中断中回到 R 并且在记住如何重塑数据方面遇到了一些实际问题 我知道我想做的事情很容易 但出于某种原因 我今晚很愚蠢 并且将自己与融化和重塑混淆了 如果有人能快速指出我正确的方向 我将不胜感激 我有一个这样的数据框 pe
  • 在 R 中进行 Cox 回归后,将预测危险比列添加到数据帧中

    在 R 中运行 Cox PH 回归后 我需要在数据框中添加预测风险比的列 数据框是面板数据 其中 numgvkey 如果公司标识符 和年龄是时间标识符 您可以从此链接下载一小部分日期 https drive google com file
  • 将密度曲线拟合到 R 中的直方图

    R中有没有可以将曲线拟合到直方图的函数 假设您有以下直方图 hist c rep 65 times 5 rep 25 times 5 rep 35 times 10 rep 45 times 4 看上去很正常 但其实是歪曲的 我想拟合一条倾
  • Python - 根据条件调用函数

    我想知道是否有一种简洁的方法来根据条件调用函数 我有这个 if list 1 some dataframe df myfunction 我想知道这是否有可能三元运算符 http book pythontips com en latest t
  • 指定 R 中 hist() 中的 bin 数量?

    我尝试指定垃圾箱的数量hist R为10 如下 gt hist x breaks 10 但垃圾箱的数量并不完全是 10 我尝试了几个其他数量的垃圾箱 结果发生了同样的情况 hist says breaks可以指定 给出直方图单元格数量的单个
  • 如何调整ggplot直方图的时间刻度轴

    我正在使用一个数据框 其中一列包含POSIXct日期时间值 我正在尝试使用绘制这些时间戳的直方图ggplot2但我有两个问题 我不知道如何设置 binwidthgeom histogram 我想将每个垃圾箱设置为一天或一周 我尝试提供 di
  • 将summary()写入as.data.frame以在ggplot / R中使用

    请查找 af 数据样本t below 我正在使用以下方法进行竞争风险分析etmCIF来自etm package 产生以下结果 这很好 但需要更好的图形 曾经有一个ggtrans etm函数将数据导入ggplot 然而 这个功能显然被删除了
  • 在 mac (iMac OSX ) 终端中远程运行脚本(r 脚本)到其他计算机

    我有一个小示例脚本 script p r 如下所示 打算在终端中运行 usr bin Rscript sink output capture txt mn lt mean 1 10 and so on much longer list of
  • ggplot 中的错误问题:“grid.Call(”L_textBounds“, as.graphicsAnnot(x$label), x$x, x$y, … 中的错误”[重复]

    这个问题在这里已经有答案了 我试图在 ggplot 中制作一个条形图 其中我通过强制其中一些标签为长度为零的字符串 即 来指定要显示的标签 但是 我收到错误 Error in grid Call L textBounds as graphi
  • R:将 readRDS 应用于 .Rds 文件名的列表对象

    我有几个包含数据帧对象的 Rds 文件 我想对每个文件应用一个函数并将数据帧绑定到单个数据帧中 但是 当我尝试从文件名列表中读取多个 Rds 文件时 我收到错误 FUN X i 中的错误 从连接读取时出错 readRDS 不适用于列表吗 R
  • 从 R 环境中删除对象

    我正在阅读 Hadley 的 Advanced R 在第 8 章中 他说我们可以使用以下方法从环境中删除对象 rm 但是 移除该物体后我仍然可以看到该物体 这是我的代码 e lt new env e a lt 1 e b lt 2 e a
  • 当每个记录都是一个段落并且某些记录有 4 个字段而其他记录有 6 个字段时,如何将文本文件读入 R

    如何读取文本文件 其中每条记录都是一个段落 每个换行符表示单独的字段 复杂的是 有些记录有 4 行 有些记录有 6 行 当字段数量的差异为 1 时 DWin 解决了我的问题 但当字段数量差异为 2 时 一切都崩溃了 你可以有一个在这里看看他
  • fread 将空导入为 NA

    我正在尝试导入带有空白的 csv 读取为 不幸的是他们都读作 NA now 为了更好地演示问题 我还展示了如何NA NA and 都映射到同一事物 除了最底部的示例 这将妨碍简单的解决方法dt is na dt lt gt write cs
  • 为绘图制作 2D 图例 - 双变量分区统计图

    我一直在玩双变量 choropleth 地图 并且一直在如何创建类似于 2d 图例的问题上陷入困境约书亚 史蒂文斯 http www joshuastevens net cartography make a bivariate chorop
  • R 中的字符串作为函数参数

    数据框chocolates列出了糖果的类型以及每种糖果的一组评级 ID sweetness filling crash snickers 0 67 0 55 0 40 milky way 0 81 0 53 0 56 我正在编写一个函数 它
  • 使用outer代替expand.grid

    我正在寻找尽可能快的速度并留在基地做该做的事expand grid做 我用过outer为过去类似的目的创建一个向量 像这样的东西 v lt outer letters LETTERS paste0 unlist v lower tri v
  • 表单提交时出现 rvest 错误

    我想从以下网页中抓取数据 https swgoh gg u zozo collection 180 emperor palpatine https swgoh gg u zozo collection 180 emperor palpati
  • 如何匹配 R 中的所有匹配项?

    我有 1000 个名字的列表 说A 我还有另外 5 个名字的清单 说B 我想找出这5个名字出现在1000个号码列表中的第几行 例如 Amy 在 A 中可以出现 25 次 B 里有艾米 我想知道 Amy 出现在 A 中的哪些行 我以前使用过
  • ggplot2、R 中的单条形条形图

    我有以下数据和代码 gt ddf var1 var2 1 aa 73 2 bb 18 3 cc 9 gt gt dput ddf structure list var1 c aa bb cc var2 c 73L 18L 9L Names
  • 如何将 ggrough 图表另存为 .png

    说我正在使用R包裹ggrough https xvrdm github io ggrough https xvrdm github io ggrough 我有这个代码 取自该网页 library ggplot2 library ggroug

随机推荐

  • 使用另一个线程停止一个线程的工作

    不确定我的标题是否措辞得当 但无论如何 我有两个线程 包含需要完成的工作的主线程 以及包含带有进度条和取消按钮的表单的工作线程 在正常代码中 情况正好相反 但在这种情况下我不能这样做 当用户单击取消按钮时 会显示一条提示 询问他是否真的要取
  • MySQL 中的 OUTPUT 子句

    有没有办法模拟 MySQL 中的 OUTPUT 子句 因为我们在 SQL Server 中有一个 OUTPUT 子句 这是我的查询类型 UPDATE employee SET empage 10 OUTPUT INSERTED empid
  • 使用 ElementTree 在 Python 中处理 XML

    我对 ElementTree iter 有疑问 所以我在这个链接中尝试了这个例子 http eli thegreenplace net 2012 03 15 processing xml in python with elementtree
  • 根据上一行余额更新总计

    这是数据库数据 Name id Col1 Col2 Col3 Col4 Total Balance Row1 1 6 1 A Z Row2 2 2 3 B Z Row3 3 9 5 B Y Row4 4 16 8 C Y 我想根据条件将 总
  • 将代码从使用计时器移植到预定执行器服务

    我正在尝试使用 java 移植代码timers使用预定执行服务 我有以下用例 class A public boolean execute try Timer t new Timer t schedule new ATimerTask pe
  • 声明单个对象或将匿名对象循环到 ArrayList 中是更好的做法吗?

    我正在通过教科书学习 Java 编程 编程练习要求您 Swing 的共同功能 显示一个包含六个标签的框架 设置背景 标签变为白色 将标签的前景设置为黑色 蓝色 青色 分别为绿色 洋红色和橙色 如图 12 28a 所示 设置边框 每个标签的线
  • php - 如何打印这个多维数组? [复制]

    这个问题在这里已经有答案了 假设我有以下数组 Array 1284487200 gt Array title gt first title link gt http 3A 2F 2Fexample1 com 1261271380 gt Ar
  • 数组类型列 Spark 数据框中不区分大小写的搜索

    我有如下 Spark 数据框 col1 words An An attractive thin low profile attractive An attractive thin low profile
  • 使用 VBA 刷新单个查询的最佳选择

    我有一本包含 4 6 个查询的工作簿 我只想使用 VBA 刷新 6 个查询中的 1 个 我的问题是 我使用的是下面最快的选项吗 不 我不想在 Excel 中使用 全部刷新 刷新 按钮 我需要将其包含在子项中 CODE ThisWorkboo
  • 如何在PyQt5中使用QtWebEngine createWindow

    我正在尝试制作一个包含 QWebEngineView 的窗口 现在我希望浏览器能够处理创建窗口或 blank 类型触发器 或者专门在需要时在新窗口中打开 URL 在下面的代码中 当浏览器需要创建窗口时 会调用 createwindow 但不
  • Lua中计算字符串转换为int

    我正在尝试将包含多个数字的字符串转换为单个 int 像这样 x 5 5 amount of numbers is not constant y tonumber x print y 这样做的结果是nil虽然应该是10 整数 我解决这个问题的
  • MariaDB 10.2 和 Openssl 1.1.0e 出现“不完整类型 MD5_CONTEXT”错误

    我无法在 CentOS 7 中构建启用 RocksDB 的 MariaDB 10 2 它有以下编译错误 root mariadb 10 2 mysys ssl my md5 cc In function void md5 result MD
  • 嵌套 JSON 数组和 D3JS

    我正在尝试使用嵌套 json 数组通过 d3 js 绘制多系列图表 我在这个网站和其他网站上查看了很多地方 虽然有类似的主题 但我似乎无法使语法适用于我的特定问题 这是一个简单的问题 制作折线图 如下所示 http bl ocks org
  • 在 ScriptSharp 项目中对 C# 代码进行单元测试

    我使用 ScriptSharp 创建 RIA 应用程序 除了一些奇怪的地方之外 效果还不错 然而 使用 Firebug 查找和修复问题并不是很方便 由于 scriptsharp 还提供了一个 Dll 我希望使用一个单独的测试项目 使用 Nu
  • ReadString() 是否丢弃换行符后的字节?

    我正在尝试通过以下方式从网络连接读取数据 func getIn conn net Conn for in err bufio NewReader conn ReadString n if err nil fmt Printf err Err
  • 更正 Android 中的印地语 (Unicode) 渲染

    我成功添加了自定义字体 DroidSansFallBack ttf 以显示印地语字符而不是 Pre ICS 上的块 无论如何 4 1 上一切都运行良好 但 Froyo 和 Gingerbread 上的渲染顺序是错误的 我明白问题没有解决ht
  • Homebrew 拒绝链接 OpenSSL

    我正在使用 OSX 10 11 6 Homebrew 版本 0 9 9m OpenSSL 0 9 8zg 2015 年 7 月 14 日 我正在尝试使用 dotnetcore 并遵循他们的指示 我已经升级 安装了最新版本的 openssl
  • Excel 2007 中的 Application.filesearch 带循环

    我已经进行了多次搜索 并且在使用现在不存在的 filesearch 时很难找到正确的代码 我已经研究过使用 Dir 和 FileSystemObject 但在搜索后使用循环时没有任何混乱 我希望你能够帮助我得出一个更容易的结论 简而言之 我
  • excel 2007宏验证输入单元格的数据并显示消息框(如果不正确)

    请有人帮忙编写以下代码 它在以下行给我一个错误 Set range C5 L14 这是完整的代码 Private Sub Worksheet Change ByVal Target As Excel range Dim ws As Work
  • if-else 与 ifelse 与列表的比较

    为什么 if else 结构和函数 ifelse 的行为不同 mylist lt list list a 1 b 2 list x 10 y 20 l1 lt ifelse sum sapply mylist class list 0 my