maxcovr icon indicating copy to clipboard operation
maxcovr copied to clipboard

Error: Column `facility_chosen` must be a 1d atomic vector or a list

Open huanfachen opened this issue 6 years ago • 2 comments

I tried testing the example of max_coverage() function, as follows:

require(maxcovr)
require(dplyr)
york_selected <- york %>% filter(grade == "I")
york_unselected <- york %>% filter(grade != "I")
# Try to call max_coverage with gurobi solver
system.time(
    res_max_cov <- max_coverage(existing_facility = york_selected,
                 proposed_facility = york_unselected,
                 user = york_crime,
                 distance_cutoff = 100,
                 n_added = 20,
                 solver = "gurobi")
)

It was shown that the gurobi solver ran successfully (gap 0.0%). Then I got this error.

# Error: Column `facility_chosen` must be a 1d atomic vector or a list

The output of sessionInfo() is:

R version 3.3.3 (2017-03-06)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

locale:
[1] LC_COLLATE=English_United Kingdom.1252  LC_CTYPE=English_United Kingdom.1252   
[3] LC_MONETARY=English_United Kingdom.1252 LC_NUMERIC=C                           
[5] LC_TIME=English_United Kingdom.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] dplyr_0.7.4        bindrcpp_0.2       maxcovr_0.1.3.9100

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.16     rstudioapi_0.7   knitr_1.15.1     bindr_0.1        magrittr_1.5     hms_0.3         
 [7] devtools_1.13.3  lattice_0.20-34  R6_2.2.0         rlang_0.2.0      httr_1.3.1       tools_3.3.3     
[13] grid_3.3.3       lpSolve_5.6.13   utf8_1.1.3       cli_1.0.0        DBI_0.7          git2r_0.18.0    
[19] withr_2.0.0      assertthat_0.2.0 rprojroot_1.2    digest_0.6.12    tibble_1.4.2     crayon_1.3.4    
[25] Matrix_1.2-8     readr_1.1.1      Rglpk_0.6-3      base64enc_0.1-3  curl_2.3         slam_0.1-40     
[31] memoise_1.0.0    glue_1.1.1       gurobi_6.5-2     pillar_1.2.1     backports_1.0.5  pkgconfig_2.0.1 

I assume that this problem arises because of the new dplyr package. Can anyone help solve this problem? Thanks!

huanfachen avatar Jan 17 '19 16:01 huanfachen

Update: I tried different solvers for this example. when the default solver (i.e. "glpk") is used, there is no error. Is it because different solvers generated different results?

huanfachen avatar Jan 20 '19 22:01 huanfachen

Hi there!

Thanks for reporting this and providing an example. I think that this is a bug to do with the internals / table or summary options. Let me have a closer look.

njtierney avatar Jan 22 '19 21:01 njtierney