在 dplyr 中分组并计算百分比

2023-12-25

我在 r 中有以下数据框

   Service      Container_Pick_Day
    ABC              0
    ABC              1
    ABC              1
    ABC              2
    ABC              NA
    ABC              0
    ABC              1
    DEF              NA
    DEF              0
    DEF              1
    DEF              1
    DEF              1
    DEF              2
    DEF              1

Column Container_Pick_Day是数字并且由以下组成NA价值观。 我想做的是计算Service明智的集装箱百分比0th day,after 1 day,2 day and so on忽略NA values

所需的数据框是

 Service      Container_Pick_Day      Percentage
    ABC              0                (2/6)*100 = 33.33 
    ABC              1                (3/6)*100 = 50  
    ABC              2                (1/6)*100 = 16.67
    DEF              0                (1/6)*100 = 16.67
    DEF              1                (3/6)*100 = 50
    DEF              2                (1/6)*100 = 16.67

我在 R 中做了以下操作,但它在输出中生成 NA 值

  df%>% 
     group_by(Service) %>%
     summarise(pick_day_perc = n()/sum(Container_Pick_Day),na.rm=T) %>% 
     as.data.frame()

我必须按以下方式分组吗Service and Container_Pick_Day both ?


根据@nicola、@akrun 和我自己提供的上述所有评论添加答案,

library(dplyr)

#nicola
df %>% 
 filter(!is.na(Container_Pick_Day)) %>% 
 group_by(Service,Container_Pick_Day) %>% 
 summarise(Percentage=n()) %>% 
 group_by(Service) %>% 
 mutate(Percentage=Percentage/sum(Percentage)*100)

#akrun
df %>% 
 filter(complete.cases(Container_Pick_Day)) %>% 
 count(Service, Container_Pick_Day) %>% 
 group_by(Service) %>% 
 transmute(Container_Pick_Day, Percentage=n/sum(n)*100)

#Sotos
df %>% 
 na.omit() %>% 
 group_by_all() %>% 
 summarise(ptg = n()) %>% 
 group_by(Service) %>% 
 mutate(ptg = prop.table(ptg)*100)

所有的结果是,

Service Container_Pick_Day Percentage
   <fctr>              <int>      <dbl>
1     ABC                  0   33.33333
2     ABC                  1   50.00000
3     ABC                  2   16.66667
4     DEF                  0   16.66667
5     DEF                  1   66.66667
6     DEF                  2   16.66667
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 dplyr 中分组并计算百分比 的相关文章

  • glmnet R 包中的 cv.glmnet 出现“drop(y %*% rep(1, nc)) 错误”错误

    我有一个返回 cv glmnet 模型的 auc 值的函数 尽管不是大多数时间 但在执行 cv glmnet 函数时 它经常返回以下错误 下降误差 y 代表 1 NC 在为函数 drop 选择方法时评估参数 x 时出错 y 中的错误 rep
  • R 中具有 NA 值的聚合栅格

    我在 R 中有一个分辨率为 1 公里的栅格 其 NA 值分布广泛 但位置不规则 即 包含数据的单元格不连续 并且 NA 值分散 我正在尝试使用用户定义的平均圆角函数 包括在下面 以 5 公里分辨率 因子 5 聚合此栅格 使用 raster
  • data.frame 按列分组[重复]

    这个问题在这里已经有答案了 我有一个数据框 DF 说 DF 是 A B 1 1 2 2 1 3 3 2 3 4 3 5 5 3 6 现在我想将 A 列的行组合在一起 并得到 B 列的总和 例如 A B 1 1 5 2 2 3 3 3 11
  • 使用 geom_bar 和 stat="identity" 绘制平均值的 hline

    我有一个条形图 其中确切的条形高度位于数据框中 df lt data frame x LETTERS 1 6 y c 1 6 1 6 1 g rep x c a b each 6 ggplot df aes x x y y fill g g
  • 为 PDF 输出添加 natbib 选项

    有没有办法指定natibib输出 PDF 时的选项bookdown 我希望 tex 输出具有命令 usepackage sort compress natbib 但似乎没有任何方法可以在 YAML 中指定它 我无法将命令添加到我的序言中 因
  • 什么是 data.frame 可以做而 data.table 不能做的事情?

    我刚刚开始使用 R 并遇到了 data table 我发现它很棒 一个非常天真的问题 我可以忽略 data frame 来使用 data table 以避免两个包之间的语法混淆吗 来自数据表常见问题解答 http datatable r f
  • 使用梯度下降(最速下降)估计线性回归

    示例数据 X lt matrix c rep 1 97 runif 97 nrow 97 ncol 2 y lt matrix runif 97 nrow 97 ncol 1 我已经成功创建了成本函数 COST lt function th
  • 在 RStudio 控制台中显示西里尔字母

    我在 Rstudio 控制台中显示俄语字符时遇到问题 我使用 readxl 包加载带有俄语的 Excel 文件 西里尔字母在数据框中正确显示 但是 如果我运行一个输出包含变量名称的函数 RStudio 控制台将显示符号而不是正确的西里尔字符
  • 使用 roxygen2 记录数据集

    我正在尝试使用 roxygen2 记录 R 包中的一些数据集 仅考虑其中之一 I have mypkg data CpG human GRCh37 RDa 其中包含一个名为的对象CpG human GRCh37 和一个名为 mypkg R
  • 根据绘图单击事件对数据框进行子集化

    我有下面的数据框 Name lt c John Bob Jack Number lt c 3 3 5 NN lt data frame Name Number 还有一个简单闪亮的应用程序 可以从中创建一个绘图直方图 我的目标是单击直方图的一
  • 如何重试错误语句?

    如果某个语句出错 我如何简单地告诉 R 重试该语句几次 例如 我希望做类似的事情 tryCatch dbGetQuery Query database error function e if is locking error e If da
  • 是否可以在 R 中创建自定义 pch 形状?

    R 中的许多绘图函数都使用图形参数pch指定数据点的形状 根据R 文档 https www rdocumentation org packages graphics versions 3 6 2 topics points 有 26 个矢量
  • 如何在 R 中使用 msgbox [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在中显示消息框R 我正在寻找类似的东西msgbox在 VBA 中 因此我可以向用户发出有关问题的警报 此外 我想允许一些用户交互 例如
  • 根据第二个数据帧中的匹配创建新列

    如果有两个数据框 top3df http dpaste com 1709875 and qw qw lt structure list id structure 1 25 Label c w01 w02 w03 w04 w05 w06 w0
  • 在 R 中高效加载稀疏矩阵

    我在将数据有效加载到 R 中的稀疏矩阵格式时遇到问题 这是我当前策略的 不完整 示例 library Matrix a1 Matrix 0 5000 100000 sparse T for i in 1 5000 a1 i idxOfCol
  • R 中的频率加权,与 Stata 的结果比较

    我正在尝试分析明尼苏达大学 IPUMS 数据集中的数据1990 年美国人口普查 http usa ipums org usa sampdesc shtml us1990a in R 我正在使用survey http faculty wash
  • 生成与现有变量具有预定义相关性的二进制变量

    对于模拟研究 我想生成一组随机变量 连续变量和二元变量 这些变量与已经存在的变量具有预定义的关联binary变量 此处表示为x 对于这篇文章 假设x是按照下面的代码生成的 但请记住 在现实生活中 x是一个已经存在的变量 set seed 1
  • 如何将带有几行代码的字符数组转换为 data.frame?

    我有以下数组 my list lt c Jan 01 Dec 31 00 00 24 00 Jan 01 Jun 30 12 00 18 00 Jul 06 Dec 31 09 00 19 00 导致以下结果的最短代码是什么 x1 x2 x
  • 动态显示仪表板页面

    我有一个实用的闪亮应用程序 它使用shinydashboard包裹 新功能需要特定于用户的行为 例如 针对不同的用户名使用不同的数据集 因此我打算 显示登录表单 验证凭据并设置反应值LoggedIn to true如果成功的话 显示实际情况
  • 如何解决 R 估计中的整数溢出错误

    我正在尝试使用估计模型speedglm在 R 中 数据集很大 约 6988 万行和 38 列 行数和列数相乘得到约 27 亿 超出了整数限制 我无法提供数据 但以下示例重现了该问题 library speedglm large exampl

随机推荐

  • MySQL数据包含š和ć等特殊字符,但它们显示为“?”在网页上。为什么?

    我正在尝试从表中检索包含该值的行Boris Borenovi 反而 Boris Borenovi 被返回 我的MySQL数据库和表都有utf8 unicode ci整理集 我的 PHP 页面显示表中的数据 包含以下标题 我尝试过charse
  • 使用 xgboost 绘制特征重要性

    当我绘制特征重要性时 我得到了这个混乱的图 我有超过 7000 个变量 我知道内置函数只选择最重要的 尽管最终的图表不可读 这是完整的代码 import numpy as np import pandas as pd df pd read
  • 使用 Python 在 Selenium 中运行 javascript

    我对硒完全陌生 我想在下面的代码中执行一个javascript片段 如代码中注释的那样 但不能这样做 请帮忙 from selenium import webdriver import selenium from selenium comm
  • 适用于 Windows CE 的 Microsoft C++ STL 有何差异?

    有谁知道 Microsoft 在 Windows CE 上实现 STL 与完整的桌面 STL 之间的差异的完整列表吗 我使用的是WinCE 6 0 搭配VS 2005 我有点惊讶他们似乎删除了这么多东西 对于 GCC 来说几乎是一样的 谢谢
  • 使 incron inotify 工作时遇到问题

    所以在亚历克斯回答之后 这是我的步骤 创建外壳代码 root ip touch mylog sh root ip nano mylog sh 复制 mylog sh 中的代码 bin bash echo File 1 created gt
  • Inertia.js 中的空白页面 - 控制台中没有错误

    我已经尝试了 8 个小时左右让 Inertia js 与 Laravel 和 VueJS 一起使用 我得到的是一个空白页面 控制台中没有错误消息 实际上是前端和后端控制台 相反 我拥有的是一个空白页面和一个选项卡 其中加载动画无限运行 我在
  • ASP.NET MVC 2、Ninject 2.2 且没有为此对象定义无参数构造函数

    因此 我花了一些时间使用 ASP NET MVC 2 目前一直使用 Visual Studio 2008 现在开始使用 Ninject 2 2 及其 MVC 集成 我从以下位置下载了 Ninject 2 2 和 Ninject Web Mv
  • 将一个 div 放置在另一个 div 下方(使用 Flexbox)

    我正在尝试放置timeAgo i e 22 seconds ago内容就在下面info内容 但是 对于我正在使用的样式 timeAgo被推向右侧 这是我的标记 container overflow auto post height 120p
  • Google 地图商店定位器 - 修改默认示例

    我正在尝试根据 Google 使用的静态 csv 示例创建一个商店定位器http storelocator googlecode com git examples panel html http storelocator googlecod
  • 禁用地图滚动打开街道地图

    如何在打开的地图中禁用鼠标交互或滚动iframe 我有以下内容并放置了属性scrollwheel false 有没有一种方法可以通过 css 禁用滚动或通过 css 交互 我愿意
  • WPF MVVM ItemsControl 具有多个 ViewModel,具体取决于对象类型

    我有一个集合 其中包含全部从同一接口继承的多种类型的项目 它绑定到 ItemsControl 窗口的 DataContext 设置为保存该集合的 ViewModel 我想做的是让集合中不同类型的每个项目使用不同的 ViewModel 因此
  • 为什么 flutter pub 缓存修复会下载以前使用的每个包版本?

    命令flutter pub cache repair下载以前使用过的每个包版本 甚至是我不再使用的库 为什么 有没有办法清理所有内容并仅下载最后一个软件包版本 不幸的是 Dart 开发团队认为磁盘空间问题已成为过去 并且没有提供清除全局缓存
  • 如何将 TServerSocket 绑定到特定 IP 地址

    有谁知道有什么方法可以绑定 Delphi TServerSocket 组件以仅接受特定本地地址上的请求吗 服务器有多个IP 但要求服务器应用程序在运行时仅接受一个I P上的请求 TServerSocket不会直接公开您所要求的功能 但是可以
  • JMeter 3.2 版本 - SOAP 请求

    如何在 JMeter 3 2 版中发出测试 SOAP 请求 在旧版本中 我有 Soap XML RPC 数据采样器 而在 3 2 版本中 我没有看到此选项 请帮忙 Use HTTP请求 http jmeter apache org user
  • 如何管理非英语客户? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 管理涉及非英语客户的软件项目时 最佳实践是什么 哪些沟通问题是相关的 您会维护两种语言的文档 特别是定期更新规范 吗 此类项目的基本风险是沟通不畅 因
  • Android DatePickerDialog:设置选择的最小和最大日期

    我知道对此有很多问题 但没有一个解决方案对我有用 所以这个问题 我想限制用户选择今天之前的日期 但我无法这样做 public class DatePickerDialogFragment extends DialogFragment pri
  • 多个安装:单个 pom.xml 中的安装文件

    在回答之前请至少阅读以下内容 这是临时措施 不 我们不想设置本地存储库管理器并手动运行脚本 我们有一个遗留项目 有一些依赖项 我们有一个包含源代码和 javadoc 的本地副本 并且已被证明在生产中运行良好 但在 Central 中无法以相
  • 如何保存以 Data-URI 编码的图像?

    我正在尝试找到一种技巧来保存在 Data URI 中编码的图片 如下所示 data image png base64 iVBORw0KGgoAAAANSUhEUgAAA1MAAAE7CAYAAAA4gNuCAAAgAElEQ i fPjJw
  • IE9 支持 Windows 7 上的触摸事件吗?

    我正在尝试在基于 Windows 7 的平板电脑上使用触摸事件 即触摸移动 在画布元素上绘图 我想知道 IE9 DOM 是否支持触摸事件 如果有人也能向我指出一些示例代码 那就太好了 IE9中没有触摸事件 我想很多人在 IE9 预览阶段就向
  • 在 dplyr 中分组并计算百分比

    我在 r 中有以下数据框 Service Container Pick Day ABC 0 ABC 1 ABC 1 ABC 2 ABC NA ABC 0 ABC 1 DEF NA DEF 0 DEF 1 DEF 1 DEF 1 DEF 2