gpt4 book ai didi

R:按多个列值索引到数据框

转载 作者:行者123 更新时间:2023-12-04 02:13:19 24 4
gpt4 key购买 nike

我是 R 的初学者,在使用列值向量索引数据帧时遇到问题。

我想从 2 个参与者中选择所有行。

data 是数据框。参与者是一列
data[data$participant == c(8, 10),])
我认为这应该给我参与者 8 和 10 的所有行,但它给了我参与者 8 的一半和参与者 10 的一半。换句话说,
dim(data[data$participant == c(8, 10),])dim(data[data$participant == 8,])dim(data[data$participant == 10,]) 相同,而不是双倍。

问题似乎与索引这些多列类型的语法有关:data$participant == c(8, 10)
我将不胜感激有关如何执行此操作的任何提示(无需单独执行每个参与者)!谢谢!

最佳答案

对于多个值,使用 %in% 获取逻辑向量。

data[data$participant %in% c(8, 10),]

当我们将 ==c(8,10) 一起使用时,它会将 8 和 10 即 8,10, 8, 10, 8, 10... 等回收到“参与者”列的长度。因此,如果参与者中的第一个值是 8,它将返回 TRUE,但如果第二个值是 8,它将变为 FALSE,因为相应的元素将为 10。

关于R:按多个列值索引到数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36377569/

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