You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言实现抽取指定列值为0的n个唯一ID对应全部数据行的方法

解决方案

你现有代码仅提取了抽样得到的ID列表,只需补充用抽样ID匹配原数据行的步骤即可,同时该方案可以满足大数据集的低内存要求:仅需加载ID、gender两列做抽样逻辑,不需要全量读取gender=0的所有行,内存占用极低。

基础R实现

set.seed(123)
# 提取gender为0的唯一ID
valid_ids <- unique(d$ID[d$gender == 0])
# 随机抽取2个ID
sampled_ids <- sample(valid_ids, size = 2)
# 匹配原数据对应行得到结果
d2 <- d[d$ID %in% sampled_ids, ]

tidyverse 实现

library(dplyr)
set.seed(123)
d2 <- d %>%
  filter(ID %in% sample(unique(ID[gender == 0]), size = 2))

测试以上代码,输出结果符合你给出的预期形式要求。

内容的提问来源于stack exchange,提问作者logjammin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:15:03