dplyr

时间:2017-09-20 14:44:13

标签: r dplyr tidyverse

当我使用dplyr中的select函数时,它不起作用并给出一个错误,指出我想要选择的列名是未使用的参数。但是,如果我在函数调用之前指定dplyr,如s:" dplyr :: select"然后它正常工作:

以下是df示例:

 sampledf <- structure(list(CRN = c(5497L, 6515L, 7248L, 36956L, 37021L), 
        varA = structure(c(2L, 2L, 2L, 2L, 2L), .Label = c("A", 
        "B"), class = "factor"), varB = c(NA_integer_, NA_integer_, 
        NA_integer_, NA_integer_, NA_integer_), VarC = c(NA, NA, 
        NA, NA, 2L), varD = c(NA_integer_, NA_integer_, 
        NA_integer_, NA_integer_, NA_integer_), varE = c(1L, 1L, 4L, NA, NA)), .Names = c("CRN", 
        "varA", "varB", "varC", "varD", "varE"), row.names = c(NA, 5L), class = "data.frame")

这会产生错误:

 sample_error <- select(sampledf, varA)
  

select(sampledf,varA)中的错误:unused参数(varA)

这有效:

 sample_working <- dplyr::select(sampledf, varA)

 version
  

版本                  _
  平台x86_64-w64-mingw32
  拱x86_64
  os mingw32
  system x86_64,mingw32
  状态
  专业3   小4.0   2017年
年   月04日   第21天   svn rev 72570
  语言R
  version.string R版本3.4.0(2017-04-21)   昵称你愚蠢的黑暗

以下是会话信息:

sessionInfo()
  

R版本3.4.0(2017-04-21)   平台:x86_64-w64-mingw32 / x64(64位)   运行于:Windows&gt; = 8 x64(build 9200)

     

Matrix产品:默认

     

区域设置:   [1] LC_COLLATE = English_United States.1252 LC_CTYPE = English_United States.1252 LC_MONETARY = English_United States.1252   [4] LC_NUMERIC = C LC_TIME = English_United States.1252

     

附加基础包:   [1] stats graphics grDevices utils数据集方法库

     

其他附件包:    [1] readxl_1.0.0 bindrcpp_0.2 doBy_4.5-15 reshape2_1.4.2 ltm_1.0-0&gt; polycor_0.7-9 msm_1.6.4
   [8] MASS_7.3-47 glmnet_2.0-10 foreach_1.4.3 Matrix_1.2-9 caret_6.0-76 lattice_0.20-35 dplyr_0.7.2
  [15] purrr_0.2.3 readr_1.1.1 tidyr_0.6.3 tibble_1.3.3&gt; &GT; &GT; &GT; &GT; &GT; ggplot2_2.2.1 tidyverse_1.1.1 openxlsx_4.0.17

     

通过命名空间加载(而不是附加):    [1] Rcpp_0.12.11 lubridate_1.6.0 mvtnorm_1.0-6 assertthat_0.2.0&gt; psych_1.7.5 R6_2.2.2
   [7] cellranger_1.1.0 plyr_1.8.4 MatrixModels_0.4-1 stats4_3.4.0&gt; httr_1.3.1 rlang_0.1.1
  [13] lazyeval_0.2.0 minqa_1.2.4 SparseM_1.77 car_2.1-4&gt; nloptr_1.0.4 labeling_0.3
  [19] splines_3.4.0 lme4_1.1-13 stringr_1.2.0 foreign_0.8-67 munsell_0.4.3 broom_0.4.2
  [25] compiler_3.4.0 modelr_0.1.1 pkgconfig_2.0.1 mnormt_1.5-5 mgcv_1.8-17 nnet_7.3-12
  [31] expm_0.999-2 codetools_0.2-15 ModelMetrics_1.1.0 grid_3.4.0 nlme_3.1-131 jsonlite_1.5
  [37] gtable_0.2.0 magrittr_1.5 scales_0.4.1 stringi_1.1.5 xml2_1.1.1 iterators_1.0.8
  [43] tools_3.4.0 forcats_0.2.0 glue_1.1.0 hms_0.3 survival_2.41-3 parallel_3.4.0
  [49] pbkrtest_0.4-7 colorspace_1.3-2 rvest_0.3.2 bindr_0.1 haven_1.1.0 quantreg_5.33

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,这是由与另一个软件包的名称冲突引起的。使用:dplyr::select指定程序包。