合并列以删除 NA

2023-12-14

我在 R 中有一些列,对于每一行,其中只有一个值,其余的将为 NA。我想将它们合并到具有非 NA 值的一列中。有谁知道一个简单的方法来做到这一点。例如我可以有如下:

data <- data.frame('a' = c('A','B','C','D','E'),
                   'x' = c(1,2,NA,NA,NA),
                   'y' = c(NA,NA,3,NA,NA),
                   'z' = c(NA,NA,NA,4,5))

所以我会

'a' 'x' 'y' 'z'  
 A   1   NA  NA  
 B   2   NA  NA  
 C  NA   3   NA  
 D  NA   NA  4  
 E  NA   NA  5

我想要得到

 'a' 'mycol'  
  A   1  
  B   2  
  C   3  
  D   4  
  E   5  

包含 NA 的列的名称会根据查询中前面的代码而变化,因此我无法显式调用列名称,但我有包含 NA 的列的列名称存储为向量,例如在这个例子中cols <- c('x','y','z'),所以可以使用调用列data[, cols].

任何帮助,将不胜感激。

Thanks


A dplyr::coalesce基于的解决方案可以是:

data %>% mutate(mycol = coalesce(x,y,z)) %>%
         select(a, mycol)
#   a mycol
# 1 A     1
# 2 B     2
# 3 C     3
# 4 D     4
# 5 E     5 

Data

data <- data.frame('a' = c('A','B','C','D','E'),
                 'x' = c(1,2,NA,NA,NA),
                 'y' = c(NA,NA,3,NA,NA),
                 'z' = c(NA,NA,NA,4,5))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

合并列以删除 NA 的相关文章

  • 动态显示仪表板页面

    我有一个实用的闪亮应用程序 它使用shinydashboard包裹 新功能需要特定于用户的行为 例如 针对不同的用户名使用不同的数据集 因此我打算 显示登录表单 验证凭据并设置反应值LoggedIn to true如果成功的话 显示实际情况
  • 修改x轴刻度标签

    我正在尝试更改由生成的箱线图的 x 轴刻度标签ggplot2 x 轴是一个分类变量 HabFac 我想要的是将其刻度更改为 6 个化学品 A E 下面是我的代码 raw data read table Read data p TT ggpl
  • R ggplot2:可以自定义时间尺度的连续性吗?

    是否有可能有一个日期时间尺度而不将周末视为时间连续体的一部分 例如 如果我用线条几何图形绘制 2 周内的股票价格 我不想在周末绘制 2 天的平坦期 我希望周五与周一联系 我想有更好的方法 但是您始终可以只使用绘图的索引 然后将日期指定为标签
  • 从 R 中的 glm 中提取系数

    我进行了逻辑回归 结果如下 ssi logit single age coefficients coefficients Intercept age 3 425062382 0 009916508 我需要选取系数age 目前我使用以下代码
  • 将鼠标悬停在 ggplot 上时更新 CSS 和渲染工具提示以错误的顺序发生

    我在这里构建了一个虚拟应用程序 它为 ggplot 生成悬停消息 并确保它们保持在屏幕边界内 我编写了一些计算来确定所需的 CSS 更正并将其发送到服务器 它基于将悬停消息保留在此处的第一次尝试 SO问题 https stackoverfl
  • 通过 R 中的方向矩阵进行回溯

    我有一个这样的矩阵 https i stack imgur com mzeRI png https i stack imgur com mzeRI png 你可以像这样加载它 matrix structure c C G C A 0 V V
  • 如何在 Markdown 标题中强制换行?

    我在 rmarkdown 文档中有一个很长的标题 我想在特定位置强制换行 最小示例 title Quite long title want the line break at the asterisk output html documen
  • 使用 dplyr::mutate 重新编码而不在函数中工作

    我正在尝试使用dplyr mutate across 重新编码 a 中的指定列tbl 单独使用它们效果很好 但我无法让它们在函数中工作 library dplyr library tidyr df1 lt tibble Q7 1 1 5 Q
  • 使用 data.table::fwrite() 写入 .txt 文件 — is.list(x) 不为 TRUE

    我试图替换基本 R 函数write table with data table fwrite 加快写入速度 但该函数抱怨说is list x is not TRUE 我提供的输入有什么问题fwrite 期望 但是write table 默默
  • FFMPEG - 将视频与透明度合并

    我正在尝试使用命令将两个视频合并在一起 两个视频都具有透明度 ffmpeg exe i person2 mov vf in scale iw 2 ih 2 fade out 300 30 alpha 1 pad 2 iw ih 左 movi
  • dplyr 通过评估查找单元格值来改变特定列

    我已经使用定额 符号和求值探索了各种选项 但我似乎无法获得正确的语法 这是一个示例数据框 data frame A letters 1 4 B letters 26 23 C letters c 1 3 5 7 D letters c 2
  • R 中循环函数返回什么值

    我正在阅读 R 语言手册 想知道循环函数返回什么值 手册第 3 3 2 节循环中说 三个语句 for while repeat 中的每一个都返回最后计算的语句的值 循环语句的返回值始终为 NULL 并且是不可见返回的 那么返回什么值 NUL
  • 按组连接/粘贴列并添加到原始数据

    我有一个名称数据框 名称 按 部门 分组 Dept Date Name 30 07 DEC 02 Raphaely 30 18 MAY 03 Khoo 40 07 JUN 02 Mavris 50 01 MAY 03 Kaufling 50
  • R 绘制一些 unicode 字符,但不绘制其他字符

    我们的系统管理员刚刚将我们的操作系统升级到 SLES12SP1 我重新安装了 Rv3 2 3 并尝试绘图 我用cairo pdf并尝试绘制 x 标签为的图 u0298即太阳能符号 但它不起作用 标签只是空白 例如 cairo pdf Rpl
  • 如何计算两个邮政编码之间的距离?

    我有一个美国邮政编码列表 我必须计算所有邮政编码点之间的距离 它是一个 6k 邮政编码长列表 每个实体都有邮政编码 城市 州 纬度 经度 面积和人口 所以 我必须计算所有点之间的距离 即 6000C2 组合 这是我的数据示例 我已经在 SA
  • R 数据框中的重复行

    我正在尝试使用下面的代码复制数据框中的行 但是 我发现它很慢 duprow df 1 for i in 1 2000 print i df rbind df duprow 有更快的方法吗 您可以使用rep 例如对于数据框第 1 行的 5 个
  • 如何在R中绘制堆积柱形图?

    有谁知道如何使用 R 绘制由超过 1 个变量堆叠的列的直方图 就像excel中的 堆积柱形图 一样 谢谢你 我假设您确实想要一个条形图而不是直方图 在这种情况下 barplot从标准图形或barchart格子包中的两者都可以做到 或者使用
  • 如何改变R中数据框的形状? (将具有相同名称的列堆叠在一起)

    我正在尝试重塑 R 中的数据框 Gene ID Value Gene ID 1 Value 1 Gene ID 2 Value 2 1 A 0 A 3 A 1 2 B 5 B 6 B 5 3 C 7 C 2 C 7 4 D 8 D 9 D
  • 使用同一变量的多个子集创建新数据框

    我想创建一个新的数据框 其中的列是由不同变量分割的同一变量的子集 例如 我想创建一个新的变量子集 b 其中列由不同变量 year 的子集分割 set seed 88 df lt data frame year rep 1996 1998 3
  • R 中带有自定义字段类的参考类?

    我想在另一个引用类中使用自定义引用类 但此代码失败 nameClass lt setRefClass nameClass fields list first character last character methods list ini

随机推荐

  • 从命令行列出所有环境变量

    是否可以列出all来自 Windows 命令提示符的环境变量 相当于PowerShell的东西gci env or ls env or dir env Just do SET 你也可以做SET prefix查看名称以以下开头的所有变量pre
  • 使用导航菜单显示隐藏 html 代码/内容 [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 我有一个按点击付费 PPC 登录页面 该页面的顶部有一个菜单 主页 服务 关于 我不想有另外两个页面用于服务 关于 我只想更改内容并替换所有内容 包括和之后的内容div class i
  • 矩阵上的垃圾、索引和唯一(如何保持矩阵格式)

    在 8x8 矩阵上使用此方法 gt gt junk index unique data first Capture the index ignore junk gt gt data sort index Index data with th
  • 为什么Java中的String.hashCode()有很多冲突? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 为什么 String ha
  • 无法加载文件或程序集或其依赖项之一。该系统找不到指定的文件。 (GAC 不允许)

    我有一个 主 程序 它使用反射动态加载我自己的 plugin dll 文件 plugin dll 文件通过使用 Visual Studio 引用来引用第三方 device dll 只要 device dll 和 plugin dll 与 M
  • jQuery - 从文本区域选择所有文本

    我怎样才能做到当您在文本区域内单击时 它的整个内容都会被选中 最终 当您再次单击时 取消选择它 为了防止用户在每次尝试使用鼠标移动插入符号时选择整个文本时感到恼火 您应该使用focus事件 而不是click事件 以下内容将完成这项工作并解决
  • Mongoose 和引用 UUID 数组不转换

    使用 mongoose uuid 库时 我可以为模式设置 UUID 类型 因此当我读取数据时 它采用字符串 utf 8 格式 而当我保存数据时 它采用 UUID ObjectID BSON 类型 4 格式 这对于我的架构中的顶级或平面直接值
  • 如何在C++中使用虚函数来实现多态行为?

    我对 C 的这些重要功能很陌生 我已经在这里阅读了有关这些主题的一些问题 答案 并用谷歌搜索了一些文档 但我仍然对此感到困惑 如果有人能给我建议一些好的在线教程或书籍章节 让我轻松而缓慢地理解这个概念 并从基础开始 那就太好了 另外 如果有
  • 使用不同类型的行反序列化 XML C#

    反序列化 XML 时遇到问题 无法理解如何制作财产data根据 xml 属性不同idxds 生成一个公共属性data结合了数据 UserInfo 数据 UserTransactions 的属性 尝试过解决方案this线程但没有运气 XML
  • jQuery:快速滚动 - 可能吗?

    我有一个带有固定标题的可滚动表格 是否可以在滚动条上进行 捕捉滚动 这意味着表格行不会逐像素滚动 而是捕捉响应其行高 以便更好地查看 答案是 是 您可以调整 scrollTop 并使其成为您想要的任何内容以响应 onscroll 事件 阅读
  • 对对象的所有引用

    Java中是否可以获取一个对象的所有引用 我需要检查的是对象是否已删除所有回调订阅 Thanks 这可以通过JVMTI通常由堆分析器完成 然而 它不能在 Java 内部完成
  • 在 C# 中取消/中止任务

    我有一个 C 程序 它执行一些服务调用 我需要在这个程序中添加一些代码 以便在单击按钮 winform 时能够停止这些服务调用 例如 如果调用时间太长并且用户感到无聊 困难在于我无法修改执行调用的代码块 为此 我计划使用 Unity 框架进
  • 递归查找当前目录下所有视图私有文件的命令

    递归查找当前目录中所有视图私有文件的clearcase命令是什么 常用的命令是基于cleartool ls ct lsprivate 但它仅适用于动态视图 不适用于快照视图 ct ls rec view only 至少 它在快照和动态视图中
  • 如何在tomcat 7中加密server.xml的密码

    我想消化 加密 tomcat 的 server xml 密码 我在互联网上看到了一些代码 这些代码导致我在资源标签内添加工厂 正如你在下面看到的 不幸的是 我已经在工厂中添加了 Atomikos 但不允许我添加第二个工厂 您能否帮助我使用第
  • 为什么后台服务运行时会停止?

    我的 Android 应用程序中有一个后台服务 其中有一个线程经常监听最近运行的任务 我的服务会覆盖这两个服务onCreate and onStartCommand 方法 当我尝试打开一些应用程序时 例如Gallery Camera等等 服
  • 如何将非流文件加入DStream?

    我想将 DStream 中的每个 RDD 与非流式 不变的参考文件连接起来 这是我的代码 val sparkConf new SparkConf setAppName LogCounter val ssc new StreamingCont
  • 使用插入排序有充分的理由吗?

    对于通用排序 答案似乎是否定的 因为快速排序 合并排序和堆排序在平均情况和最坏情况下往往表现更好 然而 插入排序似乎在增量排序方面表现出色 即在很长一段时间内一次向列表添加一个元素 同时保持列表排序 特别是如果插入排序是作为链表实现的 O
  • Python IDLE 中的表情符号/表情符号

    我无法编码和显示 U0001f600 U0001f650 范围内的字符 它们被称为表情符号或表情符号 用于所有社交媒体 Python错误信息 File C Python Python342x64 lib encodings cp1251 p
  • 暴露 Docker 容器端口

    我一直在尝试通过 ip 连接到 docker 容器 但仍然不成功 当我使用 docker检查容器id 时 我得到这个结果 我的虚拟盒子默认设置为 有人可以帮我解决这个问题吗 运行 docker 时 您可以指定外部世界可以访问的端口 基本语法
  • 合并列以删除 NA

    我在 R 中有一些列 对于每一行 其中只有一个值 其余的将为 NA 我想将它们合并到具有非 NA 值的一列中 有谁知道一个简单的方法来做到这一点 例如我可以有如下 data lt data frame a c A B C D E x c 1