根据条件连接data.table中的列名[重复]

2023-12-08

这就是我的 data.table 的样子。最右边的一列PASTE是我想要的专栏。

library(data.table) 

    dt <- fread('
    A      B     C      PASTE
    TRUE  FALSE TRUE    A,C   
    TRUE  TRUE  TRUE    A;B;C
    FALSE TRUE  FALSE   B
    FALSE FALSE FALSE   
    ')

我正在尝试创建专栏PASTE通过连接所有列名只要该行该列的值为 TRUE。

这是我的尝试:

dt[,PASTE:= if(dt[,c(1:3),with=FALSE] == TRUE, paste(names(dt), sep= ";"),"")]

我们可以按行分组,unlistData.table 的子集 (.SD),数据集名称的子集,paste将元素放在一起并分配 (:=) 到 'newCol'

nm1 <- names(dt)[-4]
dt[, newCol := toString(nm1[unlist(.SD)]) ,by = 1:nrow(dt),.SDcols = nm1]

或者另一个选择是melt为“长”格式,然后进行连接

dt[melt(dt[, n := seq_len(.N)], id.var = c("n", "PASTE"))[,
               toString(variable[value]), n], on = "n"]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据条件连接data.table中的列名[重复] 的相关文章

  • orderBy 随递减排序和递增排序的变化

    是否有一种标准方法可以按几列对 data frame 进行排序 但会发生减少或增加的变化 例如 您可能希望按一个变量 递减 和下一个变量 递增 对 data frame 进行排序 有没有类似的东西 mydf order mydf myvar
  • 在闪亮仪表板中显示/隐藏菜单项

    当进入应用程序时 我需要隐藏一个菜单项 当用户选择某个值时 菜单项必须出现 我努力了shinyjs功能hidden 并且它隐藏了一个 menuItem 但是当使用show or toggle 菜单项不会出现 我发现了Rshinydashbo
  • 展平 ggplot2 中的 alpha 通道

    ggplot2 的某些对象 函数 支持 alpha 通道 http docs ggplot2 org current geom point html http docs ggplot2 org current geom point html
  • 数据集子集的回归

    我想做以下事情并需要一些帮助 分别计算 身高 与 年龄 的斜率和截距 lm Height Age 一 每个人 二 性别 并创建一个包含结果 斜率和截距 的表 我可以使用 申请 吗 在下一步中 我想做一个统计测试 以确定性别之间的斜率和截距是
  • R:使用 dcast 时包含没有条目的因子

    我在数据帧上使用 reshape2 函数 dcast 其中一个变量是某些级别未出现在数据框中的因素 但我会将所有值包含在创建的新列中 例如 假设我运行以下命令 library reshape2 dataDF lt data frame id
  • 在 R 中将本地日期时间转换为 UTC

    如何将本地日期时间转换为以下格式 12 31 2014 6 42 52 PM R 中的 UTC 我试过这个 as POSIXct as Date 12 31 2014 6 42 52 PM format m d Y H M S tz UTC
  • 匹配向量内的向量

    I have vec1 lt c 0 0 0 1 1 0 1 1 1 0 0 1 vec2 lt c 1 1 我预计 magicFUN x vec1 y vec2 1 4 7 8 这意味着我想要一个完整向量在另一个向量内的位置 match
  • 添加不同的标签以在 ggplot R 中的堆积条形图中显示总计?

    我的问题有点类似 如何添加文本标签以显示ggplot中堆叠比例条的每个条中的总数n https stackoverflow com questions 65201095 how to add text label to show total
  • 没有垂直线的直方图

    当我创建直方图时 它看起来很像这样 set seed 1 x lt 1 100 y lt x rnorm 50 y round y hist y Is there a way to make a histogram look a bit l
  • 使用 dplyr 按组计算加权平均值(并复制其他方法)

    我对语法感到困惑dplyr当尝试计算加权平均值时 我听从大卫的建议here https stackoverflow com a 27609266 1457380 语法非常透明 因此很有吸引力 但它似乎没有按我的预期工作 低于加权平均值是针对
  • 如何在shell脚本中运行R代码?

    我有一个 R 文件 myfile R 我想使用 shell 脚本来运行它 我怎样才能做到这一点 我试过这个 bin bash Rscript myfile R 但它给了我这个错误 Rscript 找不到命令 我也尝试过这个 bin bash
  • 对 R/Sweave 进行编程以获得正确的 \Sexpr 输出

    我在为 Sweave 进行 R 编程时遇到了一些问题 rstats twitter 小组经常指出这里 所以我想我应该把这个问题向大家提出 我是一名分析师 而不是程序员 所以在我的第一篇文章中请放轻松 问题是 我正在使用 R 在 Sweave
  • 在 R 绘图上使用鼠标书写?

    我使用创建了散点图plot R 中的函数 有没有可能在这个图上画图 我想添加一条直线并获取它的参数 但在我看来abline 可能会很不方便 我想画很多条线 然后选择一条最合适的 我怎样才能完成这个任务 看看 RStudio 和这个例子 li
  • 当 header=TRUE 时 read.fwf 出错

    我的模拟数据如下所示 LastName Date email CreditCardNum AgeZip Amount Paul 21 02 14 email protected cdn cgi l email protection 4241
  • 根据第二个数据帧中的匹配创建新列

    如果有两个数据框 top3df http dpaste com 1709875 and qw qw lt structure list id structure 1 25 Label c w01 w02 w03 w04 w05 w06 w0
  • 将英寸高度的字符向量转换为厘米?

    我得到一个字符向量 tibble H c 6 2 5 10 5 5 5 1 5 5 5 4 我想将其转换为厘米 请告知我该怎么做 有几种方法可以使用 1 阅读与fread粘贴到单个字符串后 library data table fread
  • 整理包中的字段说明

    我很抱歉 因为我知道这个答案可能出现在编写 R 包的手册中 但在我阅读和查看其他包的整理字段时 我无法 100 弄清楚该字段的用途 用简单的语言 我的是英语 来看 包的描述文件中的整理字段有什么作用 人们想在那里放什么 我认为这来自于某个时
  • 在 R 中使用 ggplot2 叠加两个图

    有两个数据框 df1 df2我需要使用 ggplot2 创建线图并显示在同一个图表上 df1 x y 2 30 4 25 6 20 8 15 df2 x y 2 12 4 16 6 20 8 24 用于绘制第一个 df p1 lt ggpl
  • 用于检查和批量线性模型的数据表选项

    我想知道是否有data table用于从数据集中批量处理线性模型并首先进行检查的选项 我需要对每个唯一标识符运行一堆线性模型 但首先我需要进行检查 对于每个唯一的 id 和年份 我需要检查是否有至少 24 个月的先前每月数据 但不超过 60
  • 修改x轴刻度标签

    我正在尝试更改由生成的箱线图的 x 轴刻度标签ggplot2 x 轴是一个分类变量 HabFac 我想要的是将其刻度更改为 6 个化学品 A E 下面是我的代码 raw data read table Read data p TT ggpl

随机推荐

  • Cordova chrome.socket API。有什么例子吗?

    我正在尝试使用 org chromium socket 插件 但我找不到很多例子 这是我的代码 var connButton document getElementById connButton connButton addEventLis
  • 标准 TFlite 对象检测模型在 MLKit 中不起作用

    如果我使用预训练的 TFLite 对象检测模型在 MLKit 中 我收到以下错误 CalculatorGraph Run failed in Run Calculator Open for node BoxClassifierCalcula
  • 如何离开办公室使用另一个邮箱

    我正在尝试使用 EWS EWS 托管 API 2 0 获取给定邮箱的 离开办公室 设置 设置如下 单个 服务帐户 邮箱 可读取其他邮箱日历和外出设置 使用 EWS 托管 API 可以轻松完成日历部分 但我似乎无法弄清楚如何使用 API 获取
  • 将 jquery 数据表导出到带有附加行的 Excel 不起作用 IE

    我正在尝试使用 jquery 导出按钮选项将数据表导出到 Excel 工作表 我希望在 Excel 文件中的表数据之前添加额外的行 我在小提琴中做了一个类似的演示https jsfiddle net xevpdeo1 17 它在 Chrom
  • 以编程方式将文件夹添加到 Finder 中的“位置”

    我正在尝试弄清楚如何以编程方式将文件夹添加到 Finder 的 位置 侧边栏 我已经看到了通过 Finder 首选项修改它的方法 但我也看到一些应用程序实际上将文件夹添加到侧边栏 如果有人对我应该查找的内容有任何建议 指示 我将不胜感激 这
  • 从向量对中获取值时出错

    为什么在访问对向量的迭代器中对的值时会出现以下错误 vector lt pair
  • 使用 php 从非公共 html 文件夹下载文件

    我有许多文件存储在服务器上 但不在 public html 目录中 这个想法是 登录的用户可以下载文件 使用 SESSION 变量来检查他们是否登录 但如果其他人使用他们的计算机 他们就无法在浏览器历史记录中看到直接文件路径 即使他们这样做
  • Gluon Mobile 项目不适用于 gradle 6

    我有一个 Gluon 移动项目 其 build gradle 如下所示 buildscript repositories jcenter google mavenCentral maven url http nexus gluonhq co
  • 如何从 R 中的流式 MapReduce 作业获取文件名?

    我正在流式处理 R mapreduce 作业 并且需要获取文件名 我知道 Hadoop 在当前作业启动之前设置环境变量 并且我可以使用 Sys getenv 访问 R 中的环境变量 我发现 获取流式hadoop程序中的输入文件名 和 Sys
  • 正交船体算法

    我正在尝试找到一种方法来确定直线多边形来自一组整数点 由下图中的红点表示 下图显示了我想要实现的目标 1 我只需要定义直线多边形边界的最小点集 我能找到的大多数船体算法都不满足这个问题的正交性质 例如礼物包装算法 产生以下结果 即not我想
  • 哈斯克尔:记忆化

    在离开多年并忘记一切之后 我正在尝试重新学习 Haskell 但我发现自己仍然感到困惑记忆化 特别是 我正在尝试编写一个程序来生成混乱的数量D n of n对象 原始位置没有任何项目的排列 号码D n 可以递归地定义为D 1 0 D 2 1
  • OpenCV 3.0 线迭代器

    我想使用线迭代器在使用 Python 的 OpenCV 3 0 中 为 Python 构建的 OpenCV 3 0 仍然可用吗 看来网上的答案都指向cv InitLineIterator这是cv模块 我尝试导入此模块 但似乎它不包含在当前版
  • 使用 Kubernetes 部署并通过 Ingress 连接后 SSE 损坏

    我有一个使用 EventStream 的 ReactJS 客户端和一个实现 SSE 的 golang 后端 当我将浏览器连接到在 localhost 上运行的后端时 以及当我的后端在带有端口转发的 k8s 上运行时 一切似乎都正常 一旦我使
  • 在 Java 中使用 XSOM 解析 XSD 架构。如何访问元素和复杂类型

    我在使用 Java 中的 XSOM 解析 XSD 文件时遇到了很多困难 我有两个 XSD 文件 一个定义日历 第二个定义全局类型 我希望能够读取日历文件并确定 日历有 3 个属性 有效的是一个名为 eYN 的 ENUM Cal 是一个字符串
  • 从 Java/ Android 线程返回值

    我的 android 类中有以下线程 如何从线程中获取 err 的值 public int method new Thread new Runnable int err Override public void run err device
  • 使用 @XmlPath 和 jaxb/MOXy 来映射复杂类型

    我有一个深层 XML 结构 其中有许多无意义的包装器 我将其映射到单个 Java 类 使用 XmlPath 映射简单的数据类型就像在公园散步 但是当涉及到实际需要自己的类的类型时 我不太确定如何做到这一点 特别是当这些类型也应该放入列表中时
  • PHP 的字母等效项 is_numeric

    我正在寻找一个与 is numeric 按字母顺序等效的函数 如果字符串中只有字母 则返回 true 否则返回 false PHP 中是否存在内置函数 你要ctype alpha
  • 我的代码中的未知修饰符[重复]

    这个问题在这里已经有答案了 输出错误 未知修饰符 p 你的字符串包含一团糟 这需要转义为 使用时 作为正则表达式分隔符 代替 作为正则表达式分隔符 使用不会出现在字符串中的内容 例如 例如 你must选择有保证的定界字符not出现在 Src
  • jQuery 停止 fadeTo 效果

    我想要的是一种鼠标轨迹效果 当你将鼠标悬停在 div 上或向下时 但是 如果您将鼠标悬停过快几次然后停止 效果就会自行重复 我该如何解决这个问题 我想我需要某种出队的东西 比如动画选项 但对于 fadeTo 功能 有任何想法吗 test m
  • 根据条件连接data.table中的列名[重复]

    这个问题在这里已经有答案了 这就是我的 data table 的样子 最右边的一列PASTE是我想要的专栏 library data table dt lt fread A B C PASTE TRUE FALSE TRUE A C TRU