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

在R中如何根据行索引列表提取dataframe指定变量的对应值?

R语言按指定行索引提取id列取值的方法

你可以通过以下两种常用方式实现需求:

  • 直接对id列向量做索引取值,写法最简单高效:
    核心代码:dat$id[listindex]
  • 先提取数据框的指定行,再提取id列:
    可选写法:dat[listindex, "id"]、dat[listindex, ]$id

完整可运行示例:

set.seed(42)  ## 保证结果可复现
n <- 6
dat <- data.frame(id=c("s1","s2","s2","s3","s4","s4"), 
                  date=seq.Date(as.Date("2020-12-26"), as.Date("2020-12-31"), "day"),
                  visit=1:2,
                  age=sample(18:30, n, replace=TRUE))

# 行索引列表,原代码的右赋值`listindex->c(2,4,6)`也可正常运行,这里改为更通用的左赋值写法
listindex <- c(2,4,6)

# 执行取值
dat$id[listindex]

运行后输出结果和你要求的一致:

[1] "s2" "s3" "s4"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 07:27:03