对于每种变量类型,将所有行除以一个参考行

2023-12-27

n = c(rep("A",3),rep("B",4),rep("C",3))
s = 1:10 
b = 5:14
c = 20:29
df = data.frame(n, s, b, c)       

我想要每个第一行,对于每种类型的变量n(A, B, C),作为参考行。我想将每一行划分为每个类别n除以参考行(包括参考行本身)。我想我必须使用一些应用功能,但我不知道如何解决这个问题。


我们可以用data.table。将“data.frame”转换为“data.table”(setDT(df)),按“n”分组,循环遍历其他列,除以参考行(第一行 -x[1])

library(data.table)
setDT(df)[, lapply(.SD, function(x) x/x[1]) , n]

如果需要的话可以分配它(:=) 返回感兴趣的列

setDT(df)[, (2:ncol(df)) := lapply(.SD, function(x) x/x[1]) , n]

如果我们希望“n2”不受影响,则指定中的列.SDcols

nm1 <- setdiff(names(df), c("n", "n2"))
setDT(df)[, (nm1) := lapply(.SD, function(x) x/x[1]) , n, .SDcols = nm1]

或者另一个选择是dplyr

library(dplyr)
df %?%
     group_by(n) %>%
     mutate_each(funs(./.[1]), setdiff(names(.), "n2"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对于每种变量类型,将所有行除以一个参考行 的相关文章

  • picker输入字体或背景颜色

    我在闪亮的仪表板中使用 pickerInput 这很好 除了一个问题 背景颜色和字体颜色太相似 使得过滤器选择难以阅读 有什么办法可以改变背景或字体颜色吗 如果可能的话 我想继续使用 pickerInput 但如果有一个带有 selectI
  • 我可以使用哪个 R 函数来查找两条线的交点?

    我刚刚研究了 stackoverflow 上所有的 在 R 中寻找交集 问题 它们要么是关于曲线 要么是关于分布像这个 https stackoverflow com questions 20519431 finding point of
  • R Shiny:如何将无功值从闪亮模块返回到主服务器功能?

    我有一个简单的玩具示例 它使用 add removeBtn 模块在 第一个 模块中添加和删除 UI 我需要跟踪单击 添加 删除 的次数 如果我不使用模块 这很容易 但我试图在嵌套模块的上下文中执行此操作 代码如下 但基本上 我似乎无法访问主
  • 更新 R6 对象实例中的方法定义

    如何更新 R6 类实例的方法定义 正如我所期望的 S3 使用当前的方法定义 对于 R5 参考类 我可以使用 myInstance myInstance copy 在 R6 中 我尝试了 myInstance myInstance clone
  • 在 RcppArmadillo 中将列向量乘以数值标量

    我在编译这个简单的程序时遇到一些麻烦c 代码使用Rcpp和RcppArmadillo包裹 采用以下简单示例 将矩阵的每一列乘以数值标量 code lt arma mat out Rcpp as
  • 在 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
  • 在 Shiny 中显示反应式 htmlTable 表格

    我正在制作我的第一个 Shiny 应用程序 但找不到任何有关如何显示使用 htmlTable 包创建的表格的示例 我基本上想在按下按钮时创建一个表格并显示它 Shiny 显示 html 代码而不是表格 我不知道用什么替换服务器部分中的 re
  • 如何为自定义 S3 类实现提取/取子集 ([ [<-, [[ [[<-)] 函数?

    我有一个自定义的 S3 类foo 它在正常的基础上添加了一些自定义行为data frame foo object lt data frame class foo object lt c foo data frame 对于这个类 还应该有一个
  • 如何在Rstudio中快速给几个单词加上引号?

    如何将 MI ID FL 转换为 MI ID FL 而无需键入每个双引号 Hmisc 包有一个函数 Cs 它将评估逗号分隔的文本是否带有引号 Cs MI ID FL becomes MI ID FL
  • StatET调试工具

    我想我只是很密集 但我似乎无法弄清楚如何在 Eclipse 中的 R 中使用调试工具 StatET 插件 有人有关于这个主题的任何提示或教程吗 StatET 2 00 现在对高级 可视化调试提供实验性支持 需要 Eclipse 3 6 或
  • 在 R 上安装 TDA 包时出错:目标“diag.o”的配方失败

    使用 Ubuntu 16 04 和 R 3 4 1 安装 R 包 TDA 时收到错误消息 它似乎与制作 CGAL diag cpp 和 或 diag o 最后的完整错误打印输出 有关 我仔细看了这个 在 R 上安装 TDA 包时出错 htt
  • 在 Google Colab 上的 R 笔记本中安装 python 库

    我正在尝试在 Google Colab 上的 R 笔记本中安装 python 库 为此我使用 reticulate 包 library reticulate py install pandas 但我得到的结果是这个错误 Error coul
  • 我如何查看 quantmod 包中所有可用的数据系列?

    如何显示可用的所有报价 数据系列的列表 例如使用雅虎的 getSymbols 我不知道有什么办法 TTR包有一个功能 stockSymbols 下载 NYSE AMEX 和 NASDAQ 的所有当前代码 它试图将它们采用雅虎可接受的格式 但
  • 无法将“gather”输出的列名称更改为默认名称以外的任何名称

    我正在尝试使用gather in the tidyr包 但我无法更改默认名称的输出列名称 例如 df data frame time 1 100 a 1 100 b 101 200 df long df gt gather foo bar
  • 条件和分组 mutate dplyr

    假设我有以下每个抽屉库存增加的数据 gt socks year drawer nbr sock total 1990 1 2 1991 1 2 1990 2 3 1991 2 4 1990 3 2 1991 3 1 我想要一个二进制变量来标
  • 在闪亮的数据表中为每个单元格显示工具提示或弹出窗口?

    有没有什么方法可以为 r闪亮数据表中的每个单元格获取工具提示 有很多方法可以获取悬停行或列 但我找不到一种方法来获取行和列索引并为每个单元格显示不同的悬停工具提示 任何人都可以修改以下代码吗 library shiny library DT
  • 是否有weighted.median()函数?

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

    每当我运行这段代码时 第一个图就会简单地覆盖前一个图 R中有没有办法分开得到两个图 plot pc title main abc xlab xx ylab yy plot pcs title main sdf xlab sdf ylab x
  • 更改ggplot2中的字体

    曾几何时 我改变了我的ggplot2字体使用windowsFonts Times windowsFont TT Times New Roman 现在 我无法摆脱这一切 在尝试设置family in ggplot2 theme 当我用不同的字

随机推荐

  • Web 浏览器和 OLECMDID_SELECTALL

    当我使用以下命令打开 Google 网页时 WebBrowser1 Navigate http www google com au advanced search hl en 它打开时光标位于编辑框中 所以当我使用 WebBrowser1
  • JQuery mobile - 如何设置多重选择的值?

    我在 jquery mobile 中有一个多重选择 docs http jquerymobile com demos 1 0a4 1 docs forms forms selects html http jquerymobile com d
  • 对不平衡面板数据集进行子集化,以在 R 中至少有 2 个连续观测值

    我在 R 中有一个不平衡面板数据集 以下将作为示例 dt lt data frame name rep c A B C c 3 2 3 year c 2001 2003 2000 2002 2000 2001 2003 gt dt name
  • MATLAB eig 有时会返回倒号

    我正在尝试编写一个获取矩阵的程序A任何大小 SVD 分解它 A U S V Where A是用户输入的矩阵 U是由特征向量组成的正交矩阵A A S是奇异值的对角矩阵 并且V是特征向量的正交矩阵A A 问题是 MATLAB 函数eig有时会返
  • 访问shared_ptr数组

    include
  • 从文本文件中提取数据时出现问题

    我是 python 新手 我想从这种格式中提取数据 FBpp0143497 5 151 5 157 PF00339 22 Arrestin N Domain 1 135 149 83 4 1 1e 23 1 CL0135 FBpp01434
  • Javascript 获取表单数组值

    我设置了一个表单 其中有一个添加按钮 以便我的用户可以一次向该网站提交多人 首先 表单有一个输入来填写人员姓名 如下例所示
  • 计算每列中小于 x 的元素数量

    我有一个如下所示的数据框 我试图计算每列中小于 2 0 的元素数量 然后我将在条形图中可视化结果 我使用列表和循环来做到这一点 但我想知道是否有一种 熊猫方式 可以快速做到这一点 x for i in range 6 x append df
  • F# 使用累加器,仍然出现堆栈溢出异常

    在下面的函数中 我尝试通过使用累加器来设置尾递归 但是 我遇到了堆栈溢出异常 这让我相信我设置函数的方式没有正确启用尾递归 F attempting to make a tail recursive call via accumulator
  • 创建表达式树以访问通用类型的属性

    我需要编写一个泛型方法 它采用泛型类型的实例和字符串格式的属性名称 并返回一个表达式树 我需要转换一个简单的 lambda 表达式 a gt a SomePropertyName where a是泛型类型将拥有财产按名字SomeProper
  • “无法在此文件中预览 - 无法启动 [应用程序名称]”

    我正在尝试在 Xcode 11 和 macOS Catalina 中使用 swiftUI 但 创建新项目后 会出现一个样板代码 其中包含文本 hello World 我想在代码旁边的画布中实时预览这个简单的欢迎消息 当我点击恢复按钮时 它说
  • 优雅的蟒蛇? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • JS:不确定函数返回的原因

    确实是新手问题 但为什么我的函数返回 1 该函数确实有匹配项 那么为什么该函数返回 1 而不是索引值 如果我删除 else 语句 它将返回正确的输出 let array 1 2 3 4 5 6 7 8 9 let target 5 func
  • Powershell 在过去 6 个月内禁用 AD 用户?

    如何获取过去 6 个月内禁用的 AD 用户以及禁用时的时间戳 以 dd MM yyyy 格式作为 CSV 文件 就像使用这个 Powershellhttps learn microsoft com en us powershell modu
  • PHP 会话注销错误

    许多人可能会使用 PHP mySQL 函数作为网站的登录部分 我正在尝试使用这段代码 在每个内容页面上 检查是否已登录 在每个内容页面的标题中 Page Content Here 登录脚本 由我的 main login php 页面引用
  • 在 onDraw() 中保存画布;

    我试图将 Canvas 对象保存在 onDraw 方法中 这是因为我在 onDraw 方法中使用了 foreach 循环 结果是 canvas DrawText 文本项 x y textpaint 我必须这样做 因为我在遮罩区域周围绘制文本
  • Java 8 Streams 中的并行性和 Flatmap

    考虑以下示例 IntStream of 1 1 parallel flatMap i gt IntStream range 0 1000 parallel forEach System out println 我是否将内部标志设置为并行有关
  • C 语言的接口

    我正在设计一个应用程序并遇到一个实施问题 我有以下结构定义 app h struct application t void run application struct application t void stop application
  • 如何确定 ActiveRecord 中的关联是否发生变化?

    ActiveRecord 提供更改跟踪 其中调用 name changed 返回 true false 取决于是否name属性在模型加载时和现在之间发生了变化 协会有类似的东西吗 我专门寻找 has many 关联 但所有关联类型都会有用
  • 对于每种变量类型,将所有行除以一个参考行

    n c rep A 3 rep B 4 rep C 3 s 1 10 b 5 14 c 20 29 df data frame n s b c 我想要每个第一行 对于每种类型的变量n A B C 作为参考行 我想将每一行划分为每个类别n除以