如何选择R中的特定科目

时间:2014-06-05 21:01:14

标签: r

试图挑选2个随机科目,但不知道如何做R

random.subj <- sample(1:max(Data$Id), 2)
rd <- subset(Data$Id, Data$Id==random.subj)

我有一个数据集“数据”,如

Id 
1
1
2
2
3
3
4
4
4
...

1 个答案:

答案 0 :(得分:1)

嗯,在这种情况下,random.subj将是两个元素的向量。在这种情况下,与==进行相等比较可能不是你想要的,因为它只会通过较短的列表进行循环来执行比较,而不是像你想要的那样检查每一行的值。

此外,我不确定您的所有ID是否都是数字和顺序的。最好从ID本身中取一个随机样本,而不是从ID的索引中取样。

首先解决第二个问题

random.subj <- sample(Data$Id, 2)

实际上,如果您只需要两个ID,那么这就是您所需要的,但如果您想要这些ID的数据,那么

rd <- subset(Data, Data$Id %in% random.subj)

是提取它的正确方法。