R 按给定方式排序
假设我有一个数据框,在一列(a-Z)中包含26个唯一值(可能重复),在另一列中包含一些其他数据:R 按给定方式排序,r,R,假设我有一个数据框,在一列(a-Z)中包含26个唯一值(可能重复),在另一列中包含一些其他数据: A data data B data data A data data C data data D data data R data data T data data . . Lets say it has total 400 values but only 26 are unique which means some are repeating 现在假设
A data data
B data data
A data data
C data data
D data data
R data data
T data data
.
.
Lets say it has total 400 values but only 26 are unique which means some are
repeating
现在假设我有一个数据框,其中包含10个唯一值,每个唯一值只显示一次,如下所示:
A
R
Y
U
.
.
It has only 10 unique values
现在,我应该如何仅选择第一个数据帧中包含第二个数据帧中任何一个唯一值的行,即所有包含第二个数据帧的10个唯一值中任何一个的行。您可以在%中使用
%,它是矢量化的。注意,我在第二个解决方案中使用了unique
,只是为了说明它是不需要的
set.seed(1596)
dat <- data.frame(x <- sample(LETTERS, 50, TRUE), y = rnorm(50))
select <- data.frame(x <- sample(LETTERS[1:10], 20, TRUE))
inx <- dat$x %in% select$x
inx2 <- dat$x %in% unique(select$x)
identical(dat[inx, ], dat[inx2, ])
[1] TRUE
set.seed(1596)
dat