因此,我有一个包含多个列的大型 data.frame,其中“Trial.number”和“indexer”为 2。
无论如何,dplyr 不断地添加索引器列,这让我很恼火。一个简单的例子:
saccade.df %>%
distinct(trial.number, .keep_all = F)
Run Code Online (Sandbox Code Playgroud)
我希望看到唯一的 Trial.numbers 并且只看到 Trial.number 列。然而,输出看起来像这样:
如何阻止 dplyr 这样做?为什么它不显示唯一的 Trial.numbers 而只显示唯一的索引器(我什至没有要求)。
example.df <- data.frame(trial.number = rep(1:10, each = 10), time =
seq(1:100), indexer = rep(21:30, each = 10))
example.df %>%
distinct(trial.number, .keep_all = F)
Run Code Online (Sandbox Code Playgroud)
这会给出正确的输出。然而,我以某种方式对自己的变量进行了分组。
谢谢!
尝试ungroup:
df <- data.frame(trial.number=1:2,indexer=3:4)
df %>% distinct(trial.number)
# trial.number
#1 1
#2 2
df %>% group_by(trial.number,indexer) %>% distinct(trial.number)
## A tibble: 2 x 2
## Groups: trial.number, indexer [2]
# trial.number indexer
# <int> <int>
#1 1 3
#2 2 4
df %>% group_by(trial.number,indexer) %>% ungroup %>% distinct(trial.number)
## A tibble: 2 x 1
# trial.number
# <int>
#1 1
#2 2
Run Code Online (Sandbox Code Playgroud)