在 R dplyr 中按计数扩展列

2023-11-23

我有一个因子列。我想将每个因素分散到一列中,然后通过每个 id 出现的该因素的计数来填补空白。假设我们有:

car <- c("a","b","b","b","c","c","a","b","b","b","c","c")
type <- c("good", "regular", "bad","good", "regular", "bad","good", "regular", "bad","good", "regular", "bad")
car_type <- data.frame(car,type)

and get:

   car    type
1    a    good
2    b regular
3    b     bad
4    b    good
5    c regular
6    c     bad
7    a    good
8    b regular
9    b     bad
10   b    good
11   c regular
12   c     bad

我要这个:

> results
  car good regular bad
1   a    2       0   0
2   b    2       2   2
3   c    0       2   2

我使用 dplyr 尝试此操作,但我不太习惯它,所以它不起作用。

car_type %>%
  select(car, type) %>%
  group_by(car) %>%
  mutate(seq = unique(type)) %>%
  spread(seq, type)

我会感谢任何帮助。


更新为tidyr::pivot_wider:

library(tidyverse)

car_type %>% 
  count(car, type) %>% 
  pivot_wider(names_from=type, values_from=n, values_fill=0)

原答案

With reshape2:

library(reshape2)

dcast(car_type, car ~ type)

如果你要使用dplyr,代码为:

dplyr and reshape2

car_type %>% count(car, type) %>%
  dcast(car ~ type, fill=0)

dplyr and tidyr

car_type %>% count(car, type) %>%
  spread(type, n, fill=0)

在每种情况下,count(car, type)相当于

group_by(car, type) %>% tally

or

group_by(car, type) %>% summarise(n=n())

With data.table

library(data.table)

dcast(setDT(car_type), car ~ type, fill=0)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 R dplyr 中按计数扩展列 的相关文章

随机推荐

  • 如何更改 AVCaptureVideoDataOutput 的视频方向

    问题就在这里 我正在使用 AVCaptureVideoDataOutput 从相机获取视频帧 并使用 AVAssetWriter 从中制作视频 它工作正常 但我得到的视频是颠倒的 因为我的应用程序的设备的默认方向是横向左 而不是 AVCap
  • 在 EJB 方法/@RequestScoped 和 @Stateless 之间传递状态

    我有一个 RequestScoped CDI bean 我想将其转换为 EJB 以获取声明性事务 我使用的是 EJB 3 1 Java EE 6 目前 我在子例程之间传递状态 假设该实例仅在单个请求中使用 如果我添加 Stateless现在
  • 你能让 TS 从被赋值的值中推断出变量的泛型类型参数吗?

    正在接听这个问题解决方案是指定类型参数Map构造函数 像这样 const conditions3 ReadonlyMap
  • JNI 可以支持类路径中的通配符扩展吗?

    我有一个通过 JNI 调用 Java 的 C 二进制文件 我将 CLASSPATH 设置为 somedir 以获取 somedir 中的所有 jar 当我运行二进制文件时 找不到所需的类定义 当我跑步时 java that class s
  • 如何找到 int[] 的大小? [复制]

    这个问题在这里已经有答案了 I have int list 1 2 3 如何获得尺寸list 我知道对于 char 数组 我们可以使用strlen array 查找尺寸 或检查 0 在数组的末尾 I tried sizeof array s
  • 了解 Spark 序列化

    在 Spark 中 我们如何知道哪些对象在 driver 上实例化 哪些对象在 executor 上实例化 以及如何确定哪些类需要实现 Serialized 序列化对象意味着将其状态转换为字节流 以便字节流可以恢复为对象的副本 如果 Jav
  • 何时使用 sys.path.append 以及何时修改 %PYTHONPATH% 就足够了

    所以 事实证明我在 PYTHONPATH 定义中缺少一个分号 但这只让我到目前为止 由于某种原因 我的脚本无法作为计划任务 在 WinXP 上 运行 直到我明确地将 PYTHONPATH 中的目录添加到脚本顶部 问题是 我什么时候需要显式地
  • 角度错误:如果在表单标签内使用 ngModel,则必须设置 name 属性或 [duplicate]

    这个问题在这里已经有答案了 关于该错误还有很多类似的问题和答案 如果 ngModel 在表单标签内使用 则必须设置 name 属性 或者必须在 ngModelOptions 中将表单控件定义为 独立 解决方案是定义name消息中描述的属性
  • 不同移动设备中的加速度计和陀螺仪精度

    我想使用移动设备的传感器 加速度计 指南针 陀螺仪 这个问题已经在几个地方讨论过 例如 here and here 第一步是确定哪个平台最适合实施此类系统 主要的可能性是三星的 Galaxy Galaxy tab 或 iphone ipad
  • 开放式 Java SMB 服务器实现

    Java 中是否有 SMB CIFS 服务器的开放实现 我能找到的唯一实现是 Alfresco 但它不是开源的 一个相关的问题 假设没有这样的实现 我很惊讶没有一个库提供 SMB 的子集 例如用于简单的文件传输 我的直觉是 实现一个简单的服
  • C/C++ 严格别名、对象生命周期和现代编译器

    我对 C 严格别名规则及其可能的含义感到困惑 考虑以下代码 int main int32 t a 5 float f float a f 1 0f int32 t b a Probably not well defined float g
  • 通过自动更改所有函数和变量名称来模糊生产中的反应代码

    是否有任何库可以帮助模糊生产的反应构建 就像是 const MyComp gt const propa propb useMyfunc return to const xyz gt const yxz zyx zzz return 正确的选
  • IntelliJ(使用 gradle):即使已安装也找不到 Kotlin 插件

    我正在尝试使用 gradle 构建我的项目 但似乎找不到我的 kotlin 插件 即使我确实使用 从磁盘安装插件 添加了它 这是我收到的错误 无法解析配置 classpath 的所有依赖项 找不到 org jetbrains kotlin
  • 将常量值从 _layout.cshtml 传递给 Angular

    好的 我在 ASP Net SPA 项目的 Layout cshtml 中有一个常量变量 我将传递它们 以便 Angular 可以访问它们 我怎样才能做到这一点 例如 这是我试图传递的一个值 var lenderValues Html Ac
  • 如何使用phonegap在iOS应用程序中打开网页?

    我只想在我的 iOS PhoneGap 应用程序中只有一个视图 该视图将是一个网页 我怎样才能用特定的网址加载这个唯一的视图 我想你是通过 javascript 来做到这一点的 如果是的话 怎么做 我不是 html javascript 脚
  • ASP.Net 中的数据缓存

    我需要从一些参考数据中填充一些下拉框 即城市列表 国家列表等 我需要将其填写在各种网络表格中 我认为 我们应该在应用程序中缓存这些数据 这样我们就不会在每个表单上都访问数据库 我是缓存和 ASP Net 的新手 请建议我如何做到这一点 我总
  • 查找窗口失败 - 2 个 Galaxy Nexus 上同一应用程序的不同行为

    我有两部 Galaxy Nexus 手机 这些手机具有相同的固件版本 4 0 2 相同的内部版本号 相同的内核版本 当我使用 Eclipse 将同一个应用程序部署到两部手机时 我看到每部手机都有不同的行为 在一部手机上 一切都按预期进行 在
  • WCF InvalidOperationException:绑定实例已与侦听 URI 关联

    我是 WCF 的初学者 正在学习 Essential WCF 我在使用 ServiceContract NameSpace 和 Name 时遇到问题 当我运行代码时 我捕获了以下 InvalidOperationException 但我无法
  • jQuery的val()方法改变似乎并没有改变DOM

    Doing someId val newValue 不改变 DOM 我可以检索这个值 someId val 但是 DOM 中的元素仍然没有 value 属性 如何设置输入组件的值并更改 DOM 我在用着jQuery 1 5 1 val do
  • 在 R dplyr 中按计数扩展列

    我有一个因子列 我想将每个因素分散到一列中 然后通过每个 id 出现的该因素的计数来填补空白 假设我们有 car lt c a b b b c c a b b b c c type lt c good regular bad good re