如果所有汇总值均为 NA,则 dplyr 汇总保留 NA

2023-11-26

我想使用 dplyr summarize 按组对计数进行求和。具体来说,如果并非所有求和值都是 NA,我想删除 NA 值,但如果所有求和值都是 NA,我想显示 NA。例如:

name <- c("jack", "jack", "mary", "mary", "ellen", "ellen")
number <- c(1,2,1,NA,NA,NA)

df <- data.frame(name,number)

在这种情况下,我想要以下结果:

  • 杰克=3
  • Mary = 1
  • 艾伦 = 不适用

但是如果我设置na.rm = F:

df %>% group_by(name) %>% summarise(number = sum(number, na.rm = F))

结果是:

  • 杰克=3
  • 玛丽 = 不适用
  • 艾伦 = 不适用

如果我设置na.rm = T:

df %>% group_by(name) %>% summarise(number = sum(number, na.rm = T))

结果是

  • 杰克=3
  • Mary = 1
  • 艾伦=0

我该如何解决这个问题,以便具有数字和 NA 的情况得到数字作为输出,但只有 NA 的情况得到 NA 作为输出。


我们可以有一个if/else健康)状况 -if all'number 中的值为NA,然后返回NA or else得到sum

library(dplyr)
df %>% 
  group_by(name) %>% 
  summarise(number = if(all(is.na(number))) NA_real_ else sum(number, na.rm = TRUE))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果所有汇总值均为 NA,则 dplyr 汇总保留 NA 的相关文章

  • 在 R 中进行 Cox 回归后,将预测危险比列添加到数据帧中

    在 R 中运行 Cox PH 回归后 我需要在数据框中添加预测风险比的列 数据框是面板数据 其中 numgvkey 如果公司标识符 和年龄是时间标识符 您可以从此链接下载一小部分日期 https drive google com file
  • 将密度曲线拟合到 R 中的直方图

    R中有没有可以将曲线拟合到直方图的函数 假设您有以下直方图 hist c rep 65 times 5 rep 25 times 5 rep 35 times 10 rep 45 times 4 看上去很正常 但其实是歪曲的 我想拟合一条倾
  • 从网络源获取 R 中的数据作为数据框

    我正在尝试使用 RCurl 包将一些空气污染背景数据作为 data frame 直接加载到 R 中 该网站有 3 个下拉框 用于在下载 csv 文件之前选择选项 如下图所示 我试图从下拉框中选择 3 个值 并使用 下载 CSV 按钮将数据作
  • 如何调整ggplot直方图的时间刻度轴

    我正在使用一个数据框 其中一列包含POSIXct日期时间值 我正在尝试使用绘制这些时间戳的直方图ggplot2但我有两个问题 我不知道如何设置 binwidthgeom histogram 我想将每个垃圾箱设置为一天或一周 我尝试提供 di
  • R read_excel:libxls 错误:无法解析文件

    我试图使用 readxl read excel 将 xls 文件读入 R 但它给出了以下错误 Error filepath data xls libxls error Unable to parse file 还尝试了 readxl exc
  • 将 JSON URL 转换为 R 数据帧

    我在将 JSON 文件 从 API 转换为 R 中的数据帧时遇到问题 例如 URL 我尝试了 S O 的一些不同建议 包括将json数据转换为R中的数据框 https stackoverflow com questions 28683769
  • R-了解 akima::interp 结果中的 NA 值

    我有以下数据框 ref dat k Intensity Slope 1 0 021467214 33 16 2 0 012444759 33 8 3 0 006079156 33 4 4 0 003792025 33 2 5 0 02276
  • 如何在不循环的情况下添加组ID?

    我有数据框 例如 productid ordernum p1 10 p2 20 p3 30 p4 5 p5 20 p6 8 我想添加另一列 称为 groupid 它将产品按顺序分组在一起 一旦 sum ordernum 达到 30 分配一个
  • dplyr,do(),从模型中提取参数而不丢失分组变量

    R 帮助中关于 do 的示例略有不同 by cyl lt group by mtcars cyl models lt by cyl gt do mod lm mpg disp data coefficients lt models gt d
  • R 中的发散积分可在 Wolfram 中求解

    我知道我以前问过同样的问题 但由于我是新来的 这个问题问得不好而且不可重现 因此我在这里尝试做得更好 如果我只编辑旧的 可能没有人会读它 我有一个想要积分的二重积分 ff lt function g t exp 16 g exp 8 t t
  • 在 R 中绘制对数正态概率密度

    我正在尝试在 R 中生成对数正态概率密度图 其中包含 3 个不同的均值对数和标准差对数 我尝试了以下方法 但我的图表太丑了 看起来一点也不好看 x lt seq 0 10 length 100 a lt dlnorm x meanlog 0
  • R 更改小数位且不四舍五入

    gt signif 1 89 digits 2 1 1 9 我想要1 8 这有点笨拙 但它会起作用并保持所有数字 x lt 1 829380 trunc dec lt function x n floor x 10 n 10 n Resul
  • 如何按 data.table 中的十分位数组计算统计数据

    我有一个 data table 想按组计算统计数据 R set seed 1 R DT data table a rnorm 100 b rnorm 100 这些组应该定义为 R quantile DT a probs seq 1 9 1
  • 为绘图制作 2D 图例 - 双变量分区统计图

    我一直在玩双变量 choropleth 地图 并且一直在如何创建类似于 2d 图例的问题上陷入困境约书亚 史蒂文斯 http www joshuastevens net cartography make a bivariate chorop
  • 使用 R 进行项目组织 [重复]

    这个问题在这里已经有答案了 可能的重复 统计分析和报告撰写的工作流程 https stackoverflow com questions 1429907 workflow for statistical analysis and repor
  • 使用outer代替expand.grid

    我正在寻找尽可能快的速度并留在基地做该做的事expand grid做 我用过outer为过去类似的目的创建一个向量 像这样的东西 v lt outer letters LETTERS paste0 unlist v lower tri v
  • R:将 JSON 时间格式转换为 POSIX

    我有一个 JSON 字符串 并将其放入数据框中 我能够做到这一点 但我在使用 apply 函数之一将所有时间字符串转换为 POSIX 格式时遇到问题 See here https stackoverflow com questions 90
  • 在 R 中使用 Huggingface Transformer 模型

    我正在尝试在 R 中使用不同的 Huggingface 模型 这是通过 reticulate 导入 Transformer 包来实现的 谢谢 https rpubs com eR ic transfoRmers https rpubs co
  • 为什么 geom_boxplot 比基本箱线图识别更多异常值?

    这是一个可重复的示例 与基本箱线图相比 最后一个治疗组又发现了一个异常值 dta lt structure list Treatment c A A A A A A A A A A A A A A A A B B B B B B B B B
  • 使用predictNLS围绕R中的拟合值创建置信区间?

    我想使用 R 中 propogate 包中的 PredictNLS 围绕一大组拟合值构建置信区间 作为示例 我将使用它们在函数描述中引用的数据集 https rdrr io github anspiess propagate man pre

随机推荐

  • 除了日志记录和事务管理之外,AOP 还有哪些实际应用?

    我理解这些原理 但我很难看出实际应用在哪些地方 请赐教 询问任何支持人员 日志记录是notAOP的一个很好的应用 他们不关心应用程序内部调用什么方法 他们关心应用程序正在执行的重要操作 并需要以他们理解的方式呈现该信息 要创建像样的日志 您
  • 3DSv2 Sagepay 直接集成基础知识

    协议 4 00 的文档可能会更有帮助 对于每个努力让 3DSV2 工作的人来说 我希望任何已经设法让 3DSV2 工作的人能够详细阐述基础知识 我将根据我的理解总结流程 请大家帮忙纠正必要的地方并添加任何问题 例如从 VPSTx Id 中删
  • 如何在 pyspark pandas_udf 中记录/打印消息?

    我已经测试过logger and print无法打印消息pandas udf 无论是在集群模式还是客户端模式 测试代码 import sys import numpy as np import pandas as pd from pyspa
  • 具有任意类型值的 C++ 关联数组

    在 C 中为每个键创建具有任意值类型的关联数组的最佳方法是什么 目前我的计划是创建一个 值 类 其中包含我期望类型的成员变量 例如 class Value int iValue Value int v iValue v std string
  • 如何禁用底部的反应本机警告消息

    我正在开发一个react native IOS应用程序 这个应用程序有时会引发一条警告消息 setState 只能更新已安装或正在安装的组件 我明白该消息的含义 这是由于长时间的AJAX调用造成的 考虑到这个警告不会对APP造成任何严重的问
  • HTTP 错误 500.19 - 内部服务器错误?

    我正在将一个非常基本的站点从 Win 2003 迁移到 Win 2008 R2 该网站出现下面列出的错误 我该如何诊断这个问题 我在这两台服务器之间移动了许多其他站点 这是唯一收到此错误的站点 我看过有关此问题的其他帖子 但没有一个列出适合
  • 使用 Nhibernate 过滤通过聚合根返回的子集合

    我正在尝试在使用 Nhibernate 加载聚合根时过滤它的子集合 向客户加载所有已发货的订单 这可能吗 那么 您可以公开在地图中过滤的属性 如下所示
  • 如何在 processStartInfo 中传递多个参数?

    我想运行一些cmd命令来自c 代码 我关注了一些博客和教程并得到了答案 但我有点困惑 即我应该如何传递多个参数 我使用以下代码 System Diagnostics Process process new System Diagnostic
  • Python美汤表单输入解析

    我的目标是获取所有输入名称和值的列表 将它们配对并提交表格 名称和值是随机的 from bs4 import BeautifulSoup parsing html
  • 可以设置Python对象的任何属性[重复]

    这个问题在这里已经有答案了 例如 这段代码是Python a object a b 3 throws AttributeError object object has no attribute b 但是 这段代码 class c objec
  • 将 sonar.test.exclusions 与 Sonarqube 6.3 一起使用

    我目前正在评估 Sonarqube 6 3 对我当前的 5 5 实例进行了重大升级 并且在尝试找出该功能的过程中我感到很困惑声纳 测试 排除环境 有这样一个问题 Sonar Maven 插件 如何排除测试源目录 这似乎表明它用于从分析中排除
  • Python 中的重复数据删除

    在浏览 Python 中用于重复数据删除的 Dedupe 库的示例时 我发现它创建了一个集群 ID输出文件中的列 根据文档 该列指示哪些记录相互引用 虽然我无法找出两者之间的任何关系集群 ID这对查找重复记录有什么帮助 如果有人对此有见解
  • Java线程阻塞

    我的java环境有问题 我运行 Solr 1 3 搜索引擎 已有一年多了 突然间我遇到了很多麻烦 我所有的线程池 250 每天都会被随机阻塞一两次 我没有对 solr 应用程序或 tomcat 服务器进行任何更改 我正在运行 tomcat
  • 测试两个 __m128i 变量之间的相等性

    如果我想在两个之间进行按位相等测试 m128i变量 我是否需要使用 SSE 指令或者我可以使用 如果不是 我应该使用哪条SSE指令 虽然使用 mm movemask epi8是一种解决方案 如果您有一个带有 SSE4 1 的处理器 我认为更
  • 获取点击事件中按钮的 ID/名称。网络

    我在 VB NET 中有一个事件可以同时处理多个按钮单击 我需要知道选择的哪个按钮启动了事件 有什么想法如何做到这一点 我的代码如下 Private Sub Answer Click ByVal sender As System Objec
  • 检查字符串中是否包含表情符号

    我用这个得到字符串的文本大小 textSize tempDict valueForKeyPath caption text sizeWithFont UIFont systemFontOfSize 12 constrainedToSize
  • 在 C 套接字编程中刷新套接字流

    我想知道如何在用 C 进行套接字编程时刷新套接字流 我尝试了所有选项设置TCP NODELAY使用以下代码 setsockopt sockfd IPPROTO TCP TCP NODELAY char flag sizeof int 注 所
  • 当窗体具有许多下拉列表控件时,C#.net windows 窗体调整大小的速度缓慢

    我制作了一个带有许多下拉列表的 Windows 窗体 这些下拉列表放置在网格 不是数据网格 内 当我在所有这些窗体中使用anchor left right top Bottom 和 dock fill 选项时 窗体调整大小在运行时会变慢 停
  • 使用 Python 从非结构化文本中提取人的年龄

    我有一个行政档案数据集 其中包括简短的传记 我正在尝试使用 python 和一些模式匹配来提取人们的年龄 一些句子的例子是 邦德先生 67 岁 是英国的一名工程师 阿曼达 B 拜恩斯 Amanda B Bynes 34 岁 是一名演员 彼得
  • 如果所有汇总值均为 NA,则 dplyr 汇总保留 NA

    我想使用 dplyr summarize 按组对计数进行求和 具体来说 如果并非所有求和值都是 NA 我想删除 NA 值 但如果所有求和值都是 NA 我想显示 NA 例如 name lt c jack jack mary mary elle