为密度图中的平均值、数据框中的新变量创建 geom_vline,而不创建新表

2023-12-09

在这里我正在看mtcars数据集。

我创建了一个密度图wt变量使用ggplot2包裹。我也把geom_vline()图层添加一条垂直线作为平均值wt.

ggplot(mtcars, aes(x = wt)) + 
  geom_density() + 
  geom_vline(xintercept = mean(mtcars$wt))

enter image description here

然后我稍微切换一下语法,从数据帧开始,然后移动到ggplot。我这样做是因为我想添加一个创建新变量的步骤。在这个例子中,我创建了wt2这是wt ^ 2.

mtcars %>%
  mutate(wt2 = wt ^ 2) %>%
  ggplot(aes(wt2)) + 
  geom_density()

enter image description here

我发现我无法再添加geom_vline()使用这种新语法,以与我之前相同的方式进行分层。我做错了什么吗?

mtcars %>%
  mutate(wt2 = wt ^ 2) %>%
  ggplot(aes(wt2)) + 
  geom_density() +
  geom_vline(xintercept = mean(mtcars$wt2))

enter image description here

现在,下面的代码创建了我想要的图表,但只有在创建新表之后才创建,这是我想避免的。我想避免这个工作流程,因为我正在处理一个大型数据集,并且它会产生内存问题来创建新表/我正在使用的环境中似乎没有空间。

mtcars_new_df % 变异(wt2 = wt ^ 2)

mtcars_new_df %>% ggplot(aes(wt2)) + 几何密度() + geom_vline(xintercept = 平均值(mtcars$wt2))

enter image description here

我想避免创建新数据框的工作流程的原因是内存和时间问题。 (我使用的数据集比mtcars数据集。)


一种选择是使用stat_summary计算映射的变量的平均值x像这样:

注:如stat_summary默认情况下适用于映射的变量y我们必须设置orientation="y"计算平均值x。此外stat_summary需要两个x and an y所以我将后者设置为0这应该适合geom_density.

library(ggplot2)
library(dplyr, warn = FALSE)

mtcars %>%
  mutate(wt2 = wt ^ 2) %>%
  ggplot(aes(wt2)) + 
  geom_density() +
  stat_summary(aes(xintercept = ..x.., y = 0), fun = mean, geom = "vline", orientation = "y")

原始示例的第二个示例wt:


mtcars %>%
  ggplot(aes(wt)) + 
  geom_density() +
  stat_summary(aes(xintercept = after_stat(x), y = 0), fun = mean, geom = "vline", orientation = "y")

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

为密度图中的平均值、数据框中的新变量创建 geom_vline,而不创建新表 的相关文章

  • 在 R 的 for 循环中创建动态命名对象并分配动态值

    我正在尝试创建一套动态命名的新对象 例如 temp2015 使用 for 循环 并存储动态值 具体来说 其他对象的名称 例如 Y2015 和 for 循环中使用的值 例如 2015 在动态命名的新对象中 我不确定为什么下面的代码不起作用 Y
  • 在r中的某个阈值处破坏 cumsum() 函数

    例如我有以下代码 cumsum 1 100 我想打破它 如果一个元素 i 1 大于3000 我怎样才能做到这一点 因此 而不是这个结果 1 1 3 6 10 15 21 28 36 45 55 66 78 91 105 120 136 15
  • R Shinydashboard 自定义 CSS 到 valueBox

    我一直在尝试将 valueBox 的颜色更改为自定义颜色 超出 validColors 中可用的颜色 但一直无法这样做 我知道有一种方法可以使用标签来包含自定义 CSS 但是我无法将它们放在正确的位置 ui lt dashboardPage
  • 在 RMarkdown 输出到 PDF 时缩进而不添加项目符号点或编号

    之前有人问过如何在没有项目符号的情况下缩进文本 RMarkdown 中的点 但这是针对 HTML 输出的 在 RMarkdown 中缩进而不添加项目符号点或数字 https stackoverflow com questions 47087
  • 在ggplot中设置y轴中断

    我在代码中设置中断时遇到困难 我尝试添加breaks seq 0 100 by 20 但似乎无法让它正常工作 本质上我希望 Y 轴从 0 到 100 每 20 个刻度一次 YearlyCI lt read table header T te
  • dplyr:连接中的 NSE (by)

    我很难弄清楚如何使用 dplyr left join 和 NSE 连接两个表 问题是我无法为 by 提供正确的值 我想我现在已经找到了解决方案 但感觉我正在以一种额外复杂的方式来做 因此 如果您知道更简单 更优雅的解决方案 请告诉我 这就是
  • 要在子集中显示的非数字条目的维恩图

    我有以下数据框 SET1 SET2 SET3 par1 par2 par1 par2 par3 par2 par3 par4 par5 我想制作一个维恩图 其中所有这些 parX 元素都显示在各自的子集中 即作为标签 而不仅仅是重叠元素的数
  • case_when 与部分字符串匹配和 contains()

    我正在使用一个数据集 其中有许多名为 status1 status2 等的列 在这些列中 它表示某人是否豁免 完整 注册等 不幸的是 豁免投入并不一致 这是一个示例 library dplyr problem lt tibble perso
  • R:如何将字符/数字转为1,NA转为0?

    有没有一种简单的方法可以将列的字符 数字变为 1 将 NA 变为 0 这里有一些示例数据 我想将其应用于 3 4 structure list Item Code c 176L 187L 191L 201L 217L 220L Item x
  • 如何在 R 中的 dygraph 标题中使用 UTF-8 字符

    使用 Rstudio Windows8 当我使用 dygraph 函数绘制时间序列时 在尝试在主标题中使用 UTF 8 字符时遇到问题 library dygraphs dygraph AirPassengers main T tulo 这
  • R 中 SVG 图形的最佳设备? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想从 R 导出 SVG 图形 似乎有两种选择 RSvgDevice 和 Cairo 有人可以对这些包发表评论吗 是默认的还是明显比另一个
  • 如何将旋转的 NetCDF 转换回正常的纬度/经度网格?

    我有一个带有旋转坐标的 NetCDF 文件 我需要将其转换为正常的纬度 经度坐标 经度为 180到180 纬度为 90到90 library ncdf4 nc open dat nf 对于尺寸 它显示 1 5 variables exclu
  • 无法将“gather”输出的列名称更改为默认名称以外的任何名称

    我正在尝试使用gather in the tidyr包 但我无法更改默认名称的输出列名称 例如 df data frame time 1 100 a 1 100 b 101 200 df long df gt gather foo bar
  • R 数据结构的运算效率

    我想知道是否有任何关于操作效率的文档R 特别是那些与数据操作相关的 例如 我认为向数据框添加列是有效的 因为我猜您只是向链接列表添加一个元素 我想添加行会更慢 因为向量保存在数组中C level你必须分配一个新的长度数组n 1并将所有元素复
  • 是否有weighted.median()函数?

    我正在寻找类似形式的东西weighted mean 我通过搜索找到了一些解决方案 这些解决方案写出了整个函数 但希望有一些更用户友好的解决方案 以下软件包都有计算加权中位数的函数 aroma light isotone limma cwhm
  • R:改变堆积条形图的颜色

    library ggplot2 df2 lt data frame supp rep c VC OJ each 3 dose rep c D0 5 D1 D2 2 len c 6 8 15 33 4 2 10 29 5 head df2 g
  • 安装 2.15 后 ggplot2 中的 alpha 通道不起作用

    更新到 R 2 15 后 ggplot 中的 alpha 通道似乎不再起作用 plot rnorm 100 rnorm 100 bg cc000055 pch 21 工作得很好但是 qplot rnorm 100 rnorm 100 col
  • 将 Excel 文件读入 R 并锁定单元格

    我有一个 Excel 电子表格要读入 R 它受密码保护并锁定了单元格 我可以使用 excel link 导入受密码保护的文件 但我不知道如何解锁 取消保护单元格 excel link 给了我这个错误 gt
  • 如何在R中实现countifs函数(excel)

    我有一个包含 100000 行数据的数据集 我尝试做一些countifExcel 中的操作 但速度慢得惊人 所以我想知道R中是否可以完成这种操作 基本上 我想根据多个条件进行计数 例如 我可以指望职业和性别 row sex occupati
  • 闪亮井板宽度

    library shiny library shinydashboard ui lt dashboardPage dashboardHeader dashboardSidebar dashboardBody wellPanel tags d

随机推荐

  • 将对公共 setter 的访问限制为特定对象 (C#)

    我正在尝试创建一个类 在 C 中 作为我的应用程序的环境 我试图使该类动态化 并将其作为参数发送给我的应用程序中的实体 问题是 我希望能够更改此环境类 公共设置器 的属性 但同时我希望接收环境的类无法使用这些设置器 我似乎找不到一个好的方法
  • 在 MATLAB 中展开矩阵的最快方法是什么?

    如何转矩阵 0 12 0 23 0 34 0 45 0 56 0 67 0 78 0 89 0 90 变成一个有一堆行的 坐标 矩阵 1 1 0 12 1 2 0 23 1 3 0 34 2 1 0 45 2 2 0 56 2 3 0 67
  • jqGrid - 未显示寻呼机。如何启用它?

    我不知道为什么 但我使用 jqGrid 和寻呼机无法正常显示 我可以展示viewrecords 但寻呼机则不然 表的其余部分工作正常 有人可以告诉我问题出在哪里吗 我的 JQGrid 是 jQuery report table jqGrid
  • 如何限制 Git 存储库上的文件夹/文件?

    在 Github 上 如何限制私人存储库上的某些文件夹或文件 我不想让开发人员完全访问存储库中的所有内容 你不能 如果你给某人推送权限 他就可以推送他想要的任何内容 如果您希望某人拥有部分访问权限 您有多种选择 让他分叉并请求存储库 您可以
  • 为什么简单 RMI 服务器需要代码库?

    操作系统 Windows 7JDK 1 8 0 05 我正在学习一些简单的 RMI 教程 包括 Oracle 的 计算 示例 compute 启动我的服务器不需要代码库 并且对与此类似的问题的回答说 代码库是可选的 然而 我的服务器无法注册
  • ROracle 安装:无法加载共享对象错误

    我需要将 R 连接到 Oracle 数据库 按照说明进行操作https cran r project org web packages ROracle INSTALL 准确地说 一步一步 出现以下错误 library ROracle Err
  • CakePHP 3:带有缓存的 find()

    有关get 方法 我读过here 就像查找 get 集成了缓存 调用 get 时可以使用缓存选项来执行读缓存 但后来 在专门介绍find 方法 here 没有提到缓存 没有缓存的例子 cache支持的选项中未提及选项 所以我想知道 我可以使
  • 为什么 equal 运算符和 like 运算符之间的相等比较存在差异?

    SELECT au lname au fname FROM authors WHERE au lname Green au lname au fname Green Marjorie SELECT au lname au fname FRO
  • PHP PDO (MSSQL) 无法获取 OUTPUT 参数

    我正在尝试使用bindParam PHP PDO 获取输出 PHP PDO 库是 FreeTDS for MS SQL 驱动程序 无论我做什么 我似乎都无法按照 php net 上的建议在绑定参数中获得 输出 我已经验证我可以调用 EXEC
  • 在 ggplot 中对齐和排列图表

    我在 ggplot 中有两个图 在我想要对齐的轴上具有相似的范围 Using library grid grid newpage grid draw rbind ggplotGrob g1 ggplotGrob g2 size last w
  • angularJS cookie读取响应值

    如果我使用 http 在我的服务器上发出请求 我将得到以下响应 Request URL http www test tst login Request Method GET Status Code 200 OK Request Header
  • GROUP_CONCAT 编号

    是否可以在 GROUP CONCAT 中进行编号 like 如果 来自 GROUP CONCAT empnam SEPARATOR 我得到一套 lt JohnM DannyP TiffnyK KarlM gt 我需要有 lt 1 JohnM
  • PHP GD库在同一页面上输出图像和文本内容

    我试图将图像输出到浏览器 然后在同一页面上输出 HTML 与图像不直接相关 这可能吗 我花了很长时间才弄清楚 这是我一直在搞乱的代码
  • 自定义类上的 NSData?

    我即将研究 iPhone 上的蓝牙交互 现在 我读到唯一可以传输的对象是 NSData 对象 现在 我想转移我的 角色 对象 这个类看起来像这样 interface Character NSObject
  • C# 文件命名递增名称 001++

    我正在使用 C 创建一个小应用程序 我需要以递归方式命名文件 在创建文件名时递增文件名 我需要以下格式的文件名 alt 001 tmp alt 002 tmp 等 我总是看到 00 在递增的数字之前被删除 例如 001 然后返回 2 而不是
  • .NET MVC 自定义路由

    我想知道是否可以创建一个比控制器更高级别的路由映射 典型的路由将包括 controller action id 我正在寻找类似 section controller action id 或 controller section action
  • 如何拆分 ObservableCollection

    我有 ObservableCollection 有 100 条记录 现在我想将该集合拆分为 10 个新集合 每个新集合有 10 条记录 这意味着 1 个集合 100 条记录 10 个集合 10 条记录 1 个集合 任何帮助将不胜感激 使用
  • 常量函数指针

    我在函数指针方面遇到一些困难 我有一个基类 它定义了一个函数指针 通过typedef double function double x const 一个简单的问题 为什么上面的 typedef 不能编译 给出以下错误 错误 const 和
  • 展开循环有效,for 循环无效[重复]

    这个问题在这里已经有答案了 我有一些我不理解的行为 虽然展开的循环工作正常 循环抛出 IndexOutOfRangeExceptions 调试显示有 0 9 个 teamButtons 和 0 9 个卡片 c i private void
  • 为密度图中的平均值、数据框中的新变量创建 geom_vline,而不创建新表

    在这里我正在看mtcars数据集 我创建了一个密度图wt变量使用ggplot2包裹 我也把geom vline 图层添加一条垂直线作为平均值wt ggplot mtcars aes x wt geom density geom vline