使用 group by 计算 R 中列中子字符串的出现次数

2023-12-11

我想计算每组列中字符串的出现次数。在这种情况下,字符串通常是字符列中的子字符串。

我有一些数据,例如

ID   String              village
1    fd_sec, ht_rm,      A
2    NA, ht_rm           A
3    fd_sec,             B
4    san, ht_rm,         C

我开始使用的代码显然是不正确的,但我在搜索中未能找到可以在列中使用 grep 函数并按村庄分组的方法

impacts <- se %>%  group_by(village) %>%
summarise(c_NA = round(sum(sub$en41_1 ==  "NA")),
          c_ht_rm = round(sum(sub$en41_1 ==  "ht_rm")),
          c_san = round(sum(sub$en41_1 ==  "san")),
          c_fd_sec = round(sum(sub$en41_1 ==  "fd_sec")))

理想情况下我的输出是:

village  fd_sec  NA  ht_rm  san
A        1       1   2 
B        1
C                    1      1

先感谢您


您还可以使用cSplit()来自我的“splitstackshape”包。由于此包还加载“data.table”,因此您可以使用dcast()将结果制成表格。

Example:

library(splitstackshape)
cSplit(mydf, "String", direction = "long")[, dcast(.SD, village ~ String)]
# Using 'village' as value column. Use 'value.var' to override
# Aggregate function missing, defaulting to 'length'
#    village fd_sec ht_rm san NA
# 1:       A      1     2   0  1
# 2:       B      1     0   0  0
# 3:       C      0     1   1  0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 group by 计算 R 中列中子字符串的出现次数 的相关文章

  • 如何使用 R 或 PowerShell 从文本文件中提取数据?

    我有一个包含如下数据的文本文件 This is just text Username SOMETHI C Text Account DFAG Finish time 1 JAN 2011 00 31 58 91 Process ID 202
  • R 在读取文件时添加额外的数字

    我一直在尝试读取一个包含日期字段和数字字段的文件 我的数据在 Excel 工作表中 如下所示 Date X 1 25 2008 0 0023456 12 23 2008 0 001987 当我在 R 中使用readxl read xlsx函
  • 不理解..密度的行为

    在下面的数据框中 我预计密度的 y 轴值为 0 6 和 0 4 但它们是 1 0 我觉得我使用的方式显然缺少一些非常基本的东西 密度 但是我的大脑冻结了 我将如何使用 密度 获得所需的行为 任何帮助将不胜感激 df lt data fram
  • 获取所有参数作为列表

    R 是否提供对象 函数 方法 关键字来获取所有函数参数 使用一个例子 function a b default 会提供a and b也 在函数环境内 有没有类似的说法list 这还包括a and b在结果中 或者换一种方式 简写list a
  • 使用 sapply 的列表和矩阵

    我有一个也许是基本的问题 我在网上搜索过 我在读取文件时遇到问题 尽管如此 我还是按照 Konrad的建议设法读取了我的文件 我很欣赏这一点 How to get R to read in files from multiple subdi
  • 在 R 中索引数据帧

    再会 我不明白这里的主题 就像它有效但我不明白为什么 我有这个数据库 planets df is pre loaded in your workspace Use order to create positions positions lt
  • 为 Linux 安装 R 包时出错

    我试图在 R 3 3 上安装一个名为 rgeos 的包 但是当我输入 install packages rgeos 但它返回给我以下错误 其他包也会发生同样的情况 但不是所有包 gt installing source package rg
  • 获取行名以 ABC111 开头的所有行

    我们有以下数据框 col1 col2 col3 ABC111001 12 12 13 ABC111002 3 4 5 ABC000111 7 6 1 ABC000112 9 23 1 如何获取行名以 开头的所有行ABC111 如下 ABC1
  • 如何在 rmarkdown 中显示带有 results='asis' 的格式化 R 输出

    当使用 results asis 时 有没有办法在 rmarkdown knitr 中显示格式化程序 R 输出 一个例子是以下函数 myfun lt function cat hello n cat c one 1 two 2 然后 该块将
  • R.scale() 和 sklearn.preprocessing.scale() 之间的区别

    我目前正在将数据分析从 R 转移到 Python 当在 R 中缩放数据集时 我将使用 R scale 根据我的理解 它将执行以下操作 x mean x sd x 为了替换该函数 我尝试使用 sklearn preprocessing sca
  • 替换向量中非 %in% 向量的值

    简短的问题 我可以像这样替换某些变量值 values lt c a b a b c a b df lt data frame values 将 df values 的所有值替换为 x 其中值是neither a 或 b 输出应该是 c a
  • R data.table fread 使用不带标题的命名 colClasses(例如没有 col.names?)

    更新 2016 年 6 月 col names 已添加到 data table 1 9 6 所以问题已经结束 每个人都非常高兴 我想我现在可以将所有 read csv 调用转换为 fread 调用 而不必担心破坏 原问题 使用数据表1 9
  • 使用 gtable 排列 ggplot 绘图(具有相同宽度的 grobs)以创建 2x2 布局

    我正在尝试使用 grobs 和 gtable 将 4 个 ggplot2 图排列成 2x2 网格 我不知道如何设置宽度 也不知道如何设置非 1xn 或 nx1 排列 使用此代码 data iris a lt ggplot iris aes
  • 使用 igraph 将边缘属性显示为标签

    我在 R 中使用 igraph 进行网络分析 我想在图中的每条线上显示边缘属性 下面是一个例子 df lt data frame a c 0 1 2 3 4 b c 3 4 5 6 7 nod lt data frame node c 0
  • 如何在R中使用OpenNLP获取POS标签?

    这是 R 代码 library NLP library openNLP tagPOS lt function x s lt as String x word token annotator lt Maxent Word Token Anno
  • R中的不定积分

    我正在计算方程的不定积分 我将加速度计的数据通过可视化 C 程序输入到 R 中 然后就可以很简单地得出一个方程来表示加速度曲线 这一切都很好 但是我还需要计算撞击速度 根据我在高中时代的理解 我的加速度曲线的不定积分将产生速度方程 我知道执
  • Openxlsx 多次验证损坏输出文件

    我正在尝试添加多个验证并将公式添加到 Excel 文件 这是我使用的代码 library openxlsx fileTemplate lt New01 xlsx wbTemplate lt loadWorkbook fileTemplate
  • 了解用于处理色边距的scale_fill_continuous_divergingx参数输入

    这个问题是我上一个问题的延续here https stackoverflow com questions 58718527 setting midpoint for continuous diverging color scale on a
  • ggplot堆叠条 - 隐藏标签但保留标签位置

    我在 ggplot 中有一个堆积条形图 其中 geom text 标签位于每个条形的中心 我想隐藏小条上的标签 以便图表看起来不会过于拥挤 我可以使用下面的代码来完成此操作 但它会弄乱标签的位置 正如您在下面的链接图片中看到的那样 它们不再
  • 按列分组的数据帧上 R 中的行之间的差异

    我希望通过 app name 获得不同版本的计数差异 我的数据集如下所示 app name version id count difference 这是数据集 data structure list app name structure c

随机推荐

  • 如何在 Azure AD 身份验证后重定向到 ASP Net Core MVC 中的不同控制器操作

    我已将 ASP Net Core 2 0 项目设置为使用 Azure AD 进行身份验证 使用 VS2017 中使用 OIDC 的标准 Azure AD 身份验证模板 一切工作正常 应用程序返回到基本 url 并在身份验证成功后运行 Hom
  • 如何让 Hadoop 使用我系统上的所有核心?

    我有一个32核的系统 当我使用 Hadoop 运行 MapReduce 作业时 我从未看到 java 进程使用超过 150 CPU 根据 top 并且通常保持在 100 左右 它应该接近 3200 我需要更改哪些属性 以及在哪个文件中 才能
  • 将自定义 Soap 标头添加到 Web 服务请求

    我已经使用 apache axis2 为 Web 服务生成了存根 并且我想将自定义肥皂头添加到请求中 我希望肥皂头看起来像这样
  • OpsHub 迁移似乎不再正常运行

    大约一个月前 我对一些本地 TFS 项目到在线 Visual Studio 进行了测试迁移 在大多数情况下 一切都有效 变更集已迁移 显示与本地相同的签入用户 并带有显示原始签入日期 用户和变更集 ID 的注释 与工作项相同 我会查看历史记
  • 在 NumPy 或 PyTorch 中从矩阵获取对角线“条纹”

    我需要获得矩阵的对角线 条纹 假设我有一个大小为 KxN K gt N 的矩阵 0 1 2 3 4 5 6 7 8 9 10 11 我需要从中提取一条对角线条纹 在本例中 是通过截断原始矩阵创建的矩阵 MxV 大小 0 x x 3 4 x
  • Kubernetes Ingress - 第二个节点端口没有响应

    我在本地运行 K8S 集群 云中没有 有一个 K8S 主节点和两个工作节点 k8s master 192 168 100 100 工作节点1 192 168 100 101 工作节点2 192 168 100 102 我使用 kuberne
  • 为什么截断 BytesIO 会弄乱它?

    在 OSX 上的 Python 3 5 1 上运行 import io b io BytesIO b write b 222 print b getvalue b truncate 0 b write b 222 print b getva
  • 如何防止在 Objective-C 中使用除我的自定义方法之外的其他 init 方法

    背景 在我的 iPhone 应用程序中 我有一个自定义 UITableViewController 我打算通过将现有的 id initWithStyle UITableViewStyle style 方法扩展为扩展的自定义方法来向其传递一些
  • 具有固定标题和全页宽度网格的 Gridview

    我之前问过问题在 gridview 中冻结标题时正确设置标题宽度和列通过使用这些解决方案 我发现分辨率存在一些问题 因此我在设计本身中添加了所有列 但是当列具有大长度文本时 我仍然面临问题 我正在尝试使用此中给出的代码冻结 Gridview
  • 频域中的 Gabor 滤波器实现

    Here我们有 Gabor 滤波器的空间域实现 但是 我需要在频域中实现 Gabor 滤波器出于性能原因 我已经找到了Gabor滤波器的频域方程 I am actually in doubt about the correctness an
  • 将字符串属性绑定到对象

    假设我有一堂这样的课 public class MyClass public string Name public int Id public override string ToString return this Id ToString
  • 如何使用QTcpSocket监听qt中的特定端口? [复制]

    这个问题在这里已经有答案了 我正在使用 QTcpSocket 在两个应用程序之间进行通信 一个是C 程序 另一个是用PHP编写的网页 目标是使用套接字将数据从我的网页发送到我的 C 程序 我不知道如何在特定端口 例如 12345 上打开连接
  • 为 Git 存储库自定义 CSH 提示

    当我在 Git 存储库中时 我希望有一个自定义 CSH 提示 如果我不在 git 存储库中 我希望提示符看起来像这样 host name gt 但是当我进入 Git 存储库时必须变成这样 host name GIT REPO ROOT DI
  • 禁用 Jackson 中的数字到字符串自动转换

    当我向 Spring Boot 后端发出 json 请求时 Jackson 会自动将数字转换为字符串 有办法防止这种情况吗 例如 JSON numberAsString 123 JAVA private String numberAsStr
  • scala 应用程序中找不到对象播放

    我正在使用Eclipse并创建一个新的Scala对象 想要使用play的json解析功能并导入此包 但出现错误object play无法找到 想知道如何在 Scala 对象中使用 play 库 这就是我导入的方式 import play a
  • 无法在node.js中使用mongoose查询mongoDB

    假设我的 mongoDB 中有一个集合 db co并且只有一个文档 id ObjectId 50d083e32cdcf7ce065b616c age 22 friends Tom location NY name lee skill jav
  • jQuery.validate 插件和 ajax 表单提交

    我一生都无法让它发挥作用 验证错误看起来很好 我没有收到语法错误 但什么也没有发生 表单只是提交到页面 我也无法获得成功或错误警报
  • 方法指针的 RTTI 信息

    是否可以获取有关某个设备的 RTTI 信息TMethod 我可以通过以下方式获取实例 Instance TObject Method Data 这样我就可以获得实例的RTTI类型 但是如何才能获得正确的TRttiMethod 我想检查使用方
  • 如何将Python中的sqlite3版本从3.7.17升级到> 3.8

    尝试启动新的 django 应用程序 但出现错误 django core exceptions ImproperlyConfigured 需要 SQLite 3 8 3 或更高版本 发现 3 7 17 我已经安装了 sqlite 3 27
  • 使用 group by 计算 R 中列中子字符串的出现次数

    我想计算每组列中字符串的出现次数 在这种情况下 字符串通常是字符列中的子字符串 我有一些数据 例如 ID String village 1 fd sec ht rm A 2 NA ht rm A 3 fd sec B 4 san ht rm