gpt4 book ai didi

r - 提取数据框中每个元素的前n个值的索引

转载 作者:行者123 更新时间:2023-12-02 03:59:32 24 4
gpt4 key购买 nike

我有一个时间戳记条目,其中有4名学生在数据框中回答在线问卷。第一列是时间,第二列是学生的ID(ID:1、2、3、4)。下面是一个模拟的数据框:

DF <- data.frame(cbind(Time=1:60, ID=sample(1:4, 60, replace=T)))

我正在尝试为每个学生提取前5个条目的索引,以提取条目的时间戳。这应该返回一个包含20个值的数组(4个学生X前5个条目)。

我曾尝试使用rank(),order()和ddply()的混合方式,但未成功。有什么好的建议吗?
谢谢!

最佳答案

mplourde在评论中给出的答案很棒,但是您也可以使用plyr做到这一点:

library(plyr)
ddply(DF, .(ID), function(x) data.frame(Time_sorted=tail(sort(x$Time))))

by版本:
do.call(rbind, by(DF, DF$ID, function(x) tail(x[order(x$Time),])))

关于r - 提取数据框中每个元素的前n个值的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11110218/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com