R - 查找数据框子集中的所有唯一值

2023-12-13

我有一个包含两列的数据框。第一列定义数据的子集。我想找到第二列中仅出现在第一列的一个子集中的所有值。

例如,来自:

df=data.frame(
  data_subsets=rep(LETTERS[1:2],each=5),
  data_values=c(1,2,3,4,5,2,3,4,6,7))

data_subsets data_values
      A           1
      A           2
      A           3
      A           4
      A           5
      B           2
      B           3
      B           4
      B           6
      B           7

我想提取以下数据框。

data_subsets   data_values
    A              1
    A              5
    B              6
    B              7

我一直在玩duplicated但我似乎无法让它发挥作用。任何帮助表示赞赏。有很多解决类似问题的主题,我希望我在搜索中没有忽略答案!

EDIT

我修改了 @Matthew Lundberg 计算元素数量并从数据框中提取的方法。由于某种原因,他的方法不适用于我拥有的数据框架,所以我想出了这个,虽然不太优雅,但可以完成工作:

counts=rowSums(do.call("rbind",tapply(df$data_subsets,df$data_values,FUN=table)))
extract=names(counts)[counts==1]
df[match(extract,df$data_values),]

首先,查找 df$data_values 中每个元素的计数:

 x <- sapply(df$data_values, function(x) sum(as.numeric(df$data_values == x)))

> x
 [1] 1 2 2 2 1 2 2 2 1 1

现在提取行:

> df[x==1,]
   data_subsets data_values
1             A           1
5             A           5
9             B           6
10            B           7

请注意,您错过了上面的“A 5”。没有“B 5”。

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

R - 查找数据框子集中的所有唯一值 的相关文章

  • 要在子集中显示的非数字条目的维恩图

    我有以下数据框 SET1 SET2 SET3 par1 par2 par1 par2 par3 par2 par3 par4 par5 我想制作一个维恩图 其中所有这些 parX 元素都显示在各自的子集中 即作为标签 而不仅仅是重叠元素的数
  • 当设置 coord_fixed 时,ggplot/shiny 中的鼠标悬停坐标是错误的

    我正在使用问题中的答案 当您将鼠标悬停在闪亮的 ggplot 上时出现工具提示 https stackoverflow com questions 27965931 tooltip when you mouseover a ggplot o
  • 使用点阵个性化 R 上显示的 X 轴值

    我收集了大量包含日期 客户端及其 NFS 使用情况的数据 我正在使用lattice R包进行绘图 正如对超级用户的建议 https superuser com questions 523195 plot custom log data on
  • R:如何将字符/数字转为1,NA转为0?

    有没有一种简单的方法可以将列的字符 数字变为 1 将 NA 变为 0 这里有一些示例数据 我想将其应用于 3 4 structure list Item Code c 176L 187L 191L 201L 217L 220L Item x
  • 平滑连续 2D 点

    UPDATE 感谢 user20650和 李哲源Zheyuan Li 这是我想出的解决方案 Example data set df 3600 observations points Create a vector of the cumula
  • 扩展数据框以使其具有与原始行中两列的范围一样多的行[重复]

    这个问题在这里已经有答案了 我有一个数据框如下 structure list symbol c u n v i a start c 9L 6L 10L 8L 7L end c 14L 15L 12L 13L 11L Names c symb
  • R 中 SVG 图形的最佳设备? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想从 R 导出 SVG 图形 似乎有两种选择 RSvgDevice 和 Cairo 有人可以对这些包发表评论吗 是默认的还是明显比另一个
  • 如何将旋转的 NetCDF 转换回正常的纬度/经度网格?

    我有一个带有旋转坐标的 NetCDF 文件 我需要将其转换为正常的纬度 经度坐标 经度为 180到180 纬度为 90到90 library ncdf4 nc open dat nf 对于尺寸 它显示 1 5 variables exclu
  • StatET调试工具

    我想我只是很密集 但我似乎无法弄清楚如何在 Eclipse 中的 R 中使用调试工具 StatET 插件 有人有关于这个主题的任何提示或教程吗 StatET 2 00 现在对高级 可视化调试提供实验性支持 需要 Eclipse 3 6 或
  • HTTR GET 新错误:SSL 证书问题:证书已过期

    我已经运行这段代码几个月了 没有出现任何问题 今天我突然开始在我的两台 AWS 服务器上收到以下错误消息 错误 curl curl fetch memory url handle handle SSL证书问题 证书已过期 当尝试运行以下代码
  • 我如何查看 quantmod 包中所有可用的数据系列?

    如何显示可用的所有报价 数据系列的列表 例如使用雅虎的 getSymbols 我不知道有什么办法 TTR包有一个功能 stockSymbols 下载 NYSE AMEX 和 NASDAQ 的所有当前代码 它试图将它们采用雅虎可接受的格式 但
  • 更改 R 中 ggplot geom_polygon 的颜色方案

    我正在使用地图库和 ggplot 的 geom polygon 创建地图 我只是想将默认的蓝色 红色 紫色配色方案更改为其他颜色 我对 ggplot 非常陌生 所以如果我没有使用正确的数据类型 请原谅 我使用的数据如下所示 gt head
  • 条件和分组 mutate dplyr

    假设我有以下每个抽屉库存增加的数据 gt socks year drawer nbr sock total 1990 1 2 1991 1 2 1990 2 3 1991 2 4 1990 3 2 1991 3 1 我想要一个二进制变量来标
  • 在 RGL 中将立方体绘制到 3D 散点图中

    我正在尝试向 3D 散点图添加较小的立方体 网格 具有指定边长 我希望立方体位于原点 我该怎么做呢 我已经玩过cube3d 但我似乎无法将立方体正确定位 也无法使其成为网格 因此我可以看到它包含的数据点 这是我所拥有的 library rg
  • 是否有weighted.median()函数?

    我正在寻找类似形式的东西weighted mean 我通过搜索找到了一些解决方案 这些解决方案写出了整个函数 但希望有一些更用户友好的解决方案 以下软件包都有计算加权中位数的函数 aroma light isotone limma cwhm
  • 使用data.table进行聚合

    经过 SO 用户的多次建议后 我终于尝试将我的代码转换为使用data table library data table DT lt data table plate paste0 plate rep 1 2 each 5 id rep c
  • 斯皮尔曼相关性和联系

    我正在一小组配对排名上计算斯皮尔曼的 rho 斯皮尔曼因处理领带不当而闻名 例如 取2组8个排名 即使两组中有6个是平局 相关性仍然很高 gt cor test c 1 2 3 4 5 6 7 8 c 0 0 0 0 0 0 7 8 met
  • R:根据列名部分匹配计算行平均值

    我有一个看起来像这样的表 er er 1 as as 1 as 2 rt op a 1 6 90 8 6 4 87 b 1 8 56 7 5 5 9 c 8 7 6 4 5 9 6 d 1 0 8 6 4 3 6 e 9 7 2 4 3 8
  • tidyverse - 将命名向量转换为 data.frame/tibble 的首选方法

    使用tidyverse我经常面临将命名向量转换为向量的挑战data frame tibble列是向量的名称 执行此操作的首选 tidyverse 方式是什么 编辑 这与 this https github com hadley dplyr
  • 使用括号表示 y 轴上的负值 ggplot2

    我想在括号中显示 y 轴负值 而不是用负号 例如 我想显示 2 000 而不是 2 000 我在 R 中使用 ggplot2 我尝试在scale y continuous内部使用 negative parens TRUE 如下所示 但没有成

随机推荐

  • 获取字符串中的中间/开始/结束阿拉伯字符

    大多数阿拉伯字母都有多种上下文形式 例如后者 有通用unicode0628 但如果后者出现在单词的开头将采用这种形式 统一码FE91 中 统一码FE92 词尾 统一码FE90 我正在尝试获取 char 代码 但我总是得到通用的 unicod
  • 如果购物车中有特定产品,请禁用所有支付网关

    我想在特殊情况下禁用所有支付网关 我有 2 种特殊产品 我不想在结账时与任何其他产品组合使用 可以说我的 特别的 产品 ID 是496 and 484 所有其他都是 normal 产品 如果其中之一 特别的 产品在购物车中 例如我想禁用 p
  • Rails 实现自动完成搜索

    我不确定如何为我的搜索功能添加自动完成表单 我有一个具有自定义操作的以下控制器 def query users Search user params query article Search article params query end
  • SQL Server 2005 用 0 填充数据透视表

    I have 这个查询在 SQL Server 2005 中 我仅使用更方便的 2008 插入方法作为示例 我需要在网格输出中将 null 替换为 0 无论如何要这样做吗 你会使用ISNULL 功能 看SQL小提琴 SELECT lesso
  • 在开发过程中调整 MySQL 以快速创建列/索引

    假设 MySQL MyISAM 表包含 1 GB 数据和 1 GB 索引 此外 假设在开发过程中 列和索引将非常频繁地从表中添加和删除 由于数据库的大小 使用标准的未调整的 MySQL 设置时 列 索引的创建速度很慢 为了最大限度地减少添加
  • 获取传递给方法的参数名称[重复]

    这个问题在这里已经有答案了 复制 确定用作方法参数的变量名称 有什么方法可以检索传递给方法的参数的名称 例如 int someParameter 1 Method someParameter public void Method int p
  • NextJS React - WebpackError:窗口未定义

    我正在尝试玩 React 我遵循了 NextJs 的 入门 教程 link 并且我已经成功创建了新项目 一旦我尝试导入第三方插件 例如当前设备 or 平滑滚动条我收到以下错误 ReferenceError window is not def
  • .Net Maui:如何从任何内容页面(MVVM)读取/写入(获取/设置)全局对象

    我确信我在这里遗漏了一些深刻或明显的概念 现在我有了一个页面 可以设置各种蓝牙传感器并从心率监视器 速度计和踏频传感器获取数据 使用插件 BLE 因此 我在 ViewModel 中为名为 BluetoothPage 的 ContentPag
  • 反转 CSS 动画

    我这样做了 http codepen io yayoni pen pgXoWY 当我点击小按钮时 我想反转动画 但我所做的不起作用 我不明白为什么 function anim var div document getElementById
  • Android LinearLayout 在 Horizo​​ntalScrollView 中具有多行

    我在 Horizo ntalScrollView 中使用 LinearLayout 滚动部分正在工作 但我不知道如何制作 3 行 例如 Bold显示当前显示的内容 在模拟器中 在屏幕上 Current 按钮1 按钮2 按钮3 按钮4 按钮5
  • 单击菜单标题时连接函数

    我正在尝试找到开放的端口并将它们添加到我的菜单中 现在 我成功地对菜单执行了一个操作 例如 查找端口 并且只有单击它时 它才会连接到获取所有可用端口的函数 不幸的是 这不是我想要的 我想点击菜单title 并获取我的菜单中的所有端口 下面是
  • 从数值向量获取类别

    我有这个数字向量 vec lt 1 7 如何使用这些逻辑规则将其转换为 3 类 if vec gt 1 vec lt 4 then category1 else if vec gt 4 vec lt 6 then category2 els
  • 具有 Azure AD B2C 和单点登录的 MSAL

    我正在开发一个带有几个 Angular 4 SPA 的系统 每个 SPA 都与一个单独的 Asp NET Core 2 0 WebAPI 进行通信 Azure AD B2C 用作每个 SPA API 的身份服务 MSAL js 用作我们 A
  • 如何获取网络接口及其正确的 IPv4 地址?

    我需要知道如何获取所有网络接口及其IPv4地址 或者只是无线和以太网 要获取所有网络接口详细信息 我使用以下命令 foreach NetworkInterface ni in NetworkInterface GetAllNetworkIn
  • 我需要什么样的加盟?

    我有一个投票表 votes userid gameid a 1 a 2 a 3 b 1 b 2 和一张游戏桌 games gameid title 1 foo 2 bar 3 fizz 4 buzz 我将使用哪种联接来执行查询 从 用户 A
  • SonarQube MSBuild 无法排除文件

    我正在 debian 上使用 msbuild 运行分析 使用以下命令 mono msbuild SonarQube Scanner MSBuild exe begin d sonar login
  • Maven war/jar 大小太大

    我正在构建一个项目 其中最终的战争 罐子大小非常大 我不知道如何减小罐子的大小 如何只构建项目所需的jar 目前我们只是在依赖项中给出了 maven 构建插件 并在顶部给出了构建 war 或 jar 的工件 id 请指教 Thanks 在您
  • Redis 数据库 TTL

    无论如何 有没有办法创建一个 Redis 数据库 其中键HAVE TO一定时间后会过期吗 我知道我可以使用以下命令使单个密钥过期EXPIRE命令 但由于无论如何我都会在一定时间后使每个密钥过期 因此最好在 Redis 配置文件中指定此行为
  • Java如何计算时差

    如果用户输入是 2255 和 2305 我如何计算 24 小时内的时间差 输出应该是 10 分钟 我的一个想法是将输入分成两部分 2 位数字和 2 位数字 前 2 位数字是小时 乘以 60 即可得到分钟 然后加上后2位数字 然后计算差值 我
  • R - 查找数据框子集中的所有唯一值

    我有一个包含两列的数据框 第一列定义数据的子集 我想找到第二列中仅出现在第一列的一个子集中的所有值 例如 来自 df data frame data subsets rep LETTERS 1 2 each 5 data values c