R、mapply、ggplot:EXPR 必须是长度为 1 的向量

2023-12-03

我正在尝试使用 ggplot 和 gridExtra 绘制表的子集。 但我遇到了以下错误 EXPR 必须是长度为 1 的向量。

我可以想出任何办法。任何帮助都会有用的。

这是我正在尝试执行的一个小示例:

# the table
dt1 <- data.table(parkName=rep(c("Zone A","Zone B", "Zone C" ,
"Zone D"),5), boundary=rep(0:1,10),v=1:20, w=rnorm(20))[]

# criteria for subsetting the table
dt2 <- data.table(zone1 = c("Zone A","Zone B"), zone2 =c("Zone B","Zone C"))

# function for subsetting the table and plotting
p <- function(sd1,sd2){
dlist <- dt1[parkName==sd1 | parkName==sd2]    

b <- dt1[parkName %in% dlist]
a <- ggplot(
       b,
       aes(v,w)) + geom_line()
return(a)
}

mplot <- mapply(p,dt2[,zone1],dt2[,zone2])
cairo_pdf("myplot1.pdf")
do.call(marrangeGrob, c(mplot, list(nrow=2, ncol=2)))
dev.off()

# results
Error in switch(ct, ggplot = ggplotGrob(grobs[[ii.table]]), trellis =
 latticeGrob(grobs[[ii.table]]),  : EXPR must be a length 1 vector

Change

mplot <- mapply(p,dt2[,zone1],dt2[,zone2])

to

mplot <- mapply(p,dt2[,zone1],dt2[,zone2], SIMPLIFY=FALSE)

or

mplot <- Map(p,dt2[,zone1],dt2[,zone2])

mapply()如果返回对象的尺寸匹配,将尝试将其结果强制转换为矩阵,但是,在这种情况下,您将始终需要一个列表。您可以设置SIMPLIFY=参数为 false,或使用Map()它总是返回一个列表。

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

R、mapply、ggplot:EXPR 必须是长度为 1 的向量 的相关文章

  • 使用 Visual Studio 构建 R 包 (C API)

    我正在尝试使用 Visual Studio 构建一个简单的 R 包 这是我的代码 include
  • Leaflet Map - 第二个多边形使第一层不可点击

    我正在制作美国社区调查数据地图 目前我有一个主要层 如下所示plotMerge incomePerCapita 它运作良好 有一个完全充实的弹出窗口 图像等等 当我添加第二层以提供县和地区边界时 区域边界变得不可单击 似乎被新层掩盖了 如果
  • 在开发模式下安装包(R源未编译成Rdb)

    我需要修改R代码在一个R具有 Fortran 绑定的包 当我安装软件包时 我看到存储库目录没有源代码 但是 Rdb而是二进制文件 我看了看devtools包 但我仍然不清楚如何在不编译 R 源部分的情况下安装该包 类似于 python py
  • R2WinBUGS - 使用模拟数据进行逻辑回归

    我只是想知道是否有人有一些使用 R2WinBUGS 包来运行逻辑回归的 R 代码 理想情况下使用模拟数据来生成 真相 和两个连续协变量 Thanks 基督教 PS 生成人工数据 一维情况 并通过 r2winbugs 运行 winbugs 的
  • 如何在 dplyr 中使用切片来保留 R 中具有 NA 值的行

    我有以下数据集 我想知道每个组的最小单词 如果没有最小单词 它是 NA 我仍然想显示它 df data frame key c A A B B C word c 1 2 3 5 NA df gt group by key gt slice
  • 自动化 RStudio 处理 RMarkdown?

    我有一个 RMarkdown 文件 用于生成漂亮的 HTML 报告 问题是 我希望能够自动化它 以便它可以在无头服务器上运行 因此 不会有人启动 Rstudio 并按下 knithtml 按钮 而且 Rstudio 似乎正在做很多额外的魔法
  • 尝试通过列表递归时,在 R 中出现错误“递归索引在级别 2 失败”

    当我尝试递归遍历图形顶点列表 将它们的值与列表中的一组颜色进行匹配时 出现错误 递归索引在级别 2 失败 我的颜色列表如下 colrs lt list l blue c red n gray50 然后我有一个 igraph 中的顶点列表vs
  • 如何在 conda 中静音或抑制 gfortran (或 clang?)后端?

    我一直致力于构建一个非常特殊的 conda 环境 专为python and R与串扰使用rpy2 我想出的方法可以安装正确的R包如下 install main environment sh now date T echo Start Tim
  • 当按多列分组时,如何命名 dplyr 中的 group_split 列表

    我在 dplyr 中使用 group split 在分割了多个列后 我很难命名列表 当我们按一列分组时 我知道该怎么做here https stackoverflow com questions 57107721 how to name t
  • R 中有没有快速替换列值的方法?

    假设我们有一个包含数值的数据框 如下所示 Temperature Height 32 157 31 159 33 139 我想更换Height价值观与pic 00001 pic 00002等等 最终结果是 Temperature Heigh
  • 有条件地将可选组替换为 gsub

    一位用户问我如何做到这一点如何使 ggplot 图例中的选定单词变为斜体 https stackoverflow com questions 76054997 how to italicize select words in a ggplo
  • 从 data.frame 创建新列

    我有一个长格式的数据集 其中测量 时间 嵌套在 Networkpartners NP 中 而 Networkpartners NP 又嵌套在人员 ID 中 下面是它的示例 真实数据集有数千行 ID NP Time Outcome 1 11
  • 在 r 中的 unique() 函数中使用管道不起作用

    我在使用管道运算符 gt 和 unique 函数时遇到一些麻烦 df data frame a c 1 2 3 1 b a unique df a no problem here df gt unique a not working her
  • 为 RStudio Server 1.0.44 配置日志目录

    我在 CentOS 7 上运行 RStudio Server 1 0 44 根据文档 https support rstudio com hc en us articles 200554766 RStudio Server Applicat
  • 网页抓取(R 语言?)

    我想获取中间栏中的公司名称this http www consumercomplaints in bysubcategory mobile service providers page 1 html页面 以蓝色粗体书写 以及登记投诉者的位置
  • geom_密度匹配geom_histogram binwitdh

    我想在 ggplot2 中的分布条形图上添加一条线以显示平均分布 但遇到了麻烦 像这样的 ggplot 调用 ggplot x aes date received geom histogram aes y count binwidth 30
  • R 的 dplyr 切片中的奇怪行为

    打电话时slice df i 在 R 的 dplyr 包中 如果我要求的行索引不存在 nrows lt i 它似乎返回除组中的第一行之外的所有行 就像我调用的那样slice df 1 例如 library dplyr c1 lt c a b
  • R Shiny - 修复了 Shiny 仪表板中的侧边栏和主标题

    我有一个简化的闪亮仪表板 请参阅下面的代码 我想修复侧边栏和主标题 因此 在其他帖子的帮助下 我编写了一个 CSS 文件来解决该问题 sidebar color FFF position fixed width 220px white sp
  • 将函数应用于每个列组合

    我有一个数据框n列并希望对每个列应用一个函数组合列 这与如何cor 函数将数据帧作为输入并生成相关矩阵作为输出 例如 X lt data frame A rnorm 100 B rnorm 100 C rnorm 100 cor X 这将生
  • 在多面图中用 N 注释 x 轴

    我正在尝试生成一些按治疗条件和访问次数细分的数字结果的箱线图 每个框中的观察次数都放在图下方 并且也标记了访问次数 这里有一些虚假数据可以用来说明 我举了两个我尝试过但不太有效的例子 library ggplot2 library plyr

随机推荐

  • 如何为 HTTP 标头编码 UTF8 文件名? (Python、姜戈)

    我对 HTTP 标头有疑问 它们以 ASCII 编码 我想提供一个用于下载名称可以是非 ASCII 的文件的视图 response Content Disposition attachment filename s vo filename
  • 使用 PDFBox 压缩 PDF 的最佳解决方案是什么?

    I have a PDF file to save but first I have to compress it with the best possible quality and I must use open source libr
  • php - 带文件上传的多步骤表单

    我似乎无法找到澄清 我有 7 个步骤 第二个是上传文件 我遇到的问题是 在最后一步 当我完成表单并尝试访问临时文件时 它显示 无法访问文件 保存在默认的 tmp 文件夹中 其他多步骤教程说将其保存在临时文件夹中 然后在完成后移动到适当的文件
  • 让 peewee 在弹性豆茎上工作

    我正在尝试在弹性 beanstalk 实例上安装 peewee 包来控制 Bottle 应用程序 我认为问题出在 MySQL python 依赖项上 但 peewee 也没有加载 我的需求文件如下所示 bottle 0 11 6 peewe
  • Linux diff 仅获取输出中的行号

    我想使用Linuxdiff命令以获得以下输出 2 4c2 4 我只想知道文件不同的行号 我不想要控制台上的实际行 Eg 如果我执行以下命令 diff file1 txt file2 txt 我想要以下输出 2 4c2 4 我不想要输出 2
  • 查找两个数组之间的余弦相似度

    我想知道 R 中是否有一个内置函数可以找到两个数组之间的余弦相似度 或余弦距离 目前 我实现了自己的功能 但我不禁认为R应该已经自带了一个 这类问题一直都会出现 对我来说 正如r 标记的问题列表 还有其他问题 在 R 核心或任何 R 包中是
  • Yii2 禁用供应商模块的资产

    我已经安装了 yii2 admin 模块 位于 vendor mdmsoft yii2 admin 但我不希望它加载自己的资源包 有什么办法可以禁用这个模块资源包吗 是的 这是可能的 甚至在官方文档中提到过here 一种方法是通过应用程序配
  • Zend Forms 模块包含路径

    我正在使用 Zend 1 8 4 并设置一个简单的表单测试 我的表单类位于 application forms SectorSearch php 中 类名称为
  • Vanilla JS:完全禁用网页中的“保存”功能

    假设我是一名初级维基百科用户 只想在编辑页面中尝试使用维基文本编辑器更改一些维基百科内容 但不以任何方式保存我的更改 甚至不是错误的 因此寻求一种方法来防止any通过普通 JavaScript 将功能保存在编辑页面中 如果我去一些编辑页面在
  • 在我的 Firefox 扩展中,onUninstalled 事件似乎没有触发

    Firefox 4 公开了一些事件来检测用户何时卸载扩展 我可以得到onUninstalling触发 当用户单击删除扩展时 但我无法让任何事情发生onUninstalled火灾 应该在重新启动后发生 Components utils imp
  • 共享内存:key和id有什么区别?

    调用时ipcs a 有什么区别key列和id column 这是一个示例输出ipcs命令 ipcs a Shared Memory Segments key shmid owner perms bytes nattch status 0x0
  • 将图表中的秒转换为 hh:mm:ss

    我有一个 MsSql 数据库 它计算两个日期之间的时间跨度 以秒为单位 效果很好 我随后在 C 中使用此列并将它们写入数组中 该数组是稍后图表的输入 到目前为止 效果很好 但我找不到一种方法以 hhh mm ss 等格式显示秒数 因为时间跨
  • 使用scrapy进行CPU密集型解析

    CONCURRENT ITEMS 部分位于http doc scrapy org en latest topics settings html concurrent items将其定义为 要处理的最大并发项目数 每个响应 项目处理器 也称为
  • 如何在centos7、Apache/2.4.6下用Python3.5.2编译mod_wsgi 4.5.3

    我尝试了 configure for mod wsgi 4 5 3 如下所示 configure with python opt Python352 bin 其中 opt Python352文件夹安装有python3 5 2 然而 在 Ce
  • 为 ASP.NET 设计异步任务库

    ASP NET 运行时适用于可以并行运行的短工作负载 我需要能够安排定期事件和后台任务 这些事件和后台任务可能会或可能不会运行更长的时间 鉴于上述情况 我有以下问题需要处理 AppDomain 可能会因更改 Web config bin A
  • 为什么Python没有静态变量?

    有一个询问如何在 python 中模拟静态变量的问题 此外 在网络上可以找到许多不同的解决方案来创建静态变量 虽然我还没有看到我喜欢的 为什么Python不支持方法中的静态变量 这是否被认为是非Pythonic的或者与Python的语法有关
  • 无锁多线程适合真正的线程专家

    我正在读一本answer that 乔恩 斯基特提出了一个问题 他在其中提到了这一点 就我而言 无锁多线程适用于真正的线程专家 而我不是其中之一 这不是我第一次听到这个 但我发现很少有人谈论如果你有兴趣学习如何编写无锁多线程代码 你实际上是
  • JavaScript 中的关键代码检查不适用于 IE

    我尝试编写一个函数来使用 JavaScript 检查关键代码 它在 Firefox 上运行良好 但在 IE 上则不然 有谁知道我的代码出了什么问题 请参阅下面的代码了解更多详细信息 function textCheck e var e wi
  • 重置对象而不调用复制构造函数?

    我有一个无法复制的对象 一个 NetGame 因为它里面有一个字符串流 我在我的班级中将其声明为 NetGame m game 稍后在代码中 我只想重置它 这不需要复制任何内容 void ServerTable setActive bool
  • R、mapply、ggplot:EXPR 必须是长度为 1 的向量

    我正在尝试使用 ggplot 和 gridExtra 绘制表的子集 但我遇到了以下错误 EXPR 必须是长度为 1 的向量 我可以想出任何办法 任何帮助都会有用的 这是我正在尝试执行的一个小示例 the table dt1 lt data