bcgov / bcdata

An R package for searching & retrieving data from the B.C. Data Catalogue
https://bcgov.github.io/bcdata
Apache License 2.0
81 stars 12 forks source link

add names method for bcdc_promise #278

Closed boshek closed 2 years ago

boshek commented 3 years ago

Add names method to extract column names easily.

@ateucher if you think this is a good idea, I'll add some tests.

boshek commented 3 years ago

Actually this isn't as simple as I thought. Out of the box, the method doesn't respect previous select steps:

R> library(bcdata)
R> bcdc_query_geodata('2af1388e-d5f7-46dc-a6e2-f85415ddbd1c') %>% 
   names()
 [1] "id"                       "LINEAR_FEATURE_ID"        "WATERSHED_GROUP_ID"       "EDGE_TYPE"               
 [5] "WATERBODY_KEY"            "BLUE_LINE_KEY"            "WATERSHED_KEY"            "FWA_WATERSHED_CODE"      
 [9] "LOCAL_WATERSHED_CODE"     "WATERSHED_GROUP_CODE"     "DOWNSTREAM_ROUTE_MEASURE" "LENGTH_METRE"            
[13] "FEATURE_SOURCE"           "FEATURE_CODE"             "GEOMETRY"                 "OBJECTID"                
[17] "SE_ANNO_CAD_DATA"         "FEATURE_LENGTH_M"        
R> 
R> bcdc_query_geodata('2af1388e-d5f7-46dc-a6e2-f85415ddbd1c') %>% 
   select(EDGE_TYPE) %>% 
   names()
 [1] "id"                       "LINEAR_FEATURE_ID"        "WATERSHED_GROUP_ID"       "EDGE_TYPE"               
 [5] "WATERBODY_KEY"            "BLUE_LINE_KEY"            "WATERSHED_KEY"            "FWA_WATERSHED_CODE"      
 [9] "LOCAL_WATERSHED_CODE"     "WATERSHED_GROUP_CODE"     "DOWNSTREAM_ROUTE_MEASURE" "LENGTH_METRE"            
[13] "FEATURE_SOURCE"           "FEATURE_CODE"             "GEOMETRY"                 "OBJECTID"                
[17] "SE_ANNO_CAD_DATA"         "FEATURE_LENGTH_M"      
ateucher commented 3 years ago

@boshek I love the idea!

boshek commented 3 years ago

This works now:

R> bcdc_query_geodata('2af1388e-d5f7-46dc-a6e2-f85415ddbd1c') %>% 
   names()
 [1] "id"                       "LINEAR_FEATURE_ID"        "WATERSHED_GROUP_ID"      
 [4] "EDGE_TYPE"                "WATERBODY_KEY"            "BLUE_LINE_KEY"           
 [7] "WATERSHED_KEY"            "FWA_WATERSHED_CODE"       "LOCAL_WATERSHED_CODE"    
[10] "WATERSHED_GROUP_CODE"     "DOWNSTREAM_ROUTE_MEASURE" "LENGTH_METRE"            
[13] "FEATURE_SOURCE"           "FEATURE_CODE"             "OBJECTID"                
[16] "SE_ANNO_CAD_DATA"         "FEATURE_LENGTH_M"         "geometry"                
R> bcdc_query_geodata('2af1388e-d5f7-46dc-a6e2-f85415ddbd1c') %>% 
   select(EDGE_TYPE) %>% 
   names()
 [1] "id"                   "LINEAR_FEATURE_ID"    "WATERSHED_GROUP_ID"   "EDGE_TYPE"           
 [5] "WATERSHED_GROUP_CODE" "LENGTH_METRE"         "FEATURE_SOURCE"       "FEATURE_CODE"        
 [9] "OBJECTID"             "geometry"      
boshek commented 3 years ago

@ateucher - I don't think these failures are related to this PR.