根据dplyr
函数here上的slice
文档,它使用一个布尔参数.preserve
,我的意思是当为TRUE时,子集设置时将保留原始索引行。但是代码
library(dplyr)
library(ISLR)
set.seed(1)
train <- sample(nrow(OJ), 800)
OJ.train <- OJ %>%
dplyr::select(-c(WeekofPurchase, StoreID, STORE)) %>%
slice(train, .preserve=TRUE)
head(OJ.train)
产生以下错误
Error in slice_impl(.data, dots) : slice only accepts one expression
Calls: %>% ... <Anonymous> -> slice -> slice.data.frame -> slice_impl
Execution halted
就像使用preserve=TRUE
并简单地将TRUE
作为最终参数一样。我在这里想念什么吗?如何更改此参数的默认值(FALSE)?
答案 0 :(得分:0)
您的问题源于在线查看slice
的文档,而不是检查已安装软件包的slice
版本。
选项.preserve
仅在dplyr
:https://github.com/tidyverse/dplyr/blob/96b0395a74adf4f405e9293334bafc968653cc96/NEWS.md的0.8.0版本中引入。您提到的(在线)文档适用于该版本。
您的计算机上可能安装了以前的版本,但尚未安装选项.preserve
,因此会出现错误。