ropensci / wateRinfo

R package to download time series data from waterinfo.be
https://docs.ropensci.org/wateRinfo
MIT License
13 stars 3 forks source link

datasource error #40

Closed peterdesmet closed 5 years ago

peterdesmet commented 5 years ago

Trying to run code for creating chart for logo:

library(tidyverse)
library(wateRinfo)

tide <- get_variables("zes21a-1066") %>%
  filter(grepl(".*10min.base", ts_name)) %>%
  pull(ts_id) %>%
  get_timeseries_tsid(,
                      from = "2017-11-21 08:00:00",
                      to = "2017-11-23 23:00:00",
                      datasource = 4)

I get:

Error: Waterinfo API request failed [500]
Waterinfo error:
                InvalidParameterValue
Waterinfo return message: Datasource parameter not found in config.

I'm using wateRinfo 0.2.1.

This error is probably related to #38 and #39, breaking old code. There's probably not much that can be done to protect users from this, but I think the error message could be clearer: should I pass a new value to datasource or drop the parameter all together or something else?

stijnvanhoey commented 5 years ago

This is due to the non-stable usage of the identifiers in the returned column ts_name, for which 10min.base no longer exist.

This is the full list of available time series for this station:

> get_variables("zes21a-1066")
Use datasource: 4 for data requests of this station!
               station_name  station_no     ts_id              ts_name parametertype_name stationparameter_name
1  Antwerpen tij/Zeeschelde zes21a-1066  53985010                   RC                  W                     W
2  Antwerpen tij/Zeeschelde zes21a-1066  53998010        O.TerrainCorr                  W                     W
3  Antwerpen tij/Zeeschelde zes21a-1066  54004010          HWLW.Kidigi                  W                     W
4  Antwerpen tij/Zeeschelde zes21a-1066  54010010              HW.Hist                  W                     W
5  Antwerpen tij/Zeeschelde zes21a-1066  53994010                Pv.05                  W                     W
6  Antwerpen tij/Zeeschelde zes21a-1066  58538010              LW.hulp                  W                     W
7  Antwerpen tij/Zeeschelde zes21a-1066  54000010                Pv.LW                  W                     W
8  Antwerpen tij/Zeeschelde zes21a-1066  54005010              Pv.Lang                  W                     W
9  Antwerpen tij/Zeeschelde zes21a-1066  54013010               LW.rco                  W                     W
10 Antwerpen tij/Zeeschelde zes21a-1066  54017010                LW.KK                  W                     W
11 Antwerpen tij/Zeeschelde zes21a-1066  54018010                   Pv                  W                     W
12 Antwerpen tij/Zeeschelde zes21a-1066  54019010               LW.tpk                  W                     W
13 Antwerpen tij/Zeeschelde zes21a-1066  84027010     DrempelPrewaak.O                  W                     W
14 Antwerpen tij/Zeeschelde zes21a-1066  84034010      KT-Percentile.O        W_voorspeld           W_voorspeld
15 Antwerpen tij/Zeeschelde zes21a-1066  97763010                O.01d                  W                     W
16 Antwerpen tij/Zeeschelde zes21a-1066  53986010                O.01c                  W                     W
17 Antwerpen tij/Zeeschelde zes21a-1066  53989010                Pv.10                  W                     W
18 Antwerpen tij/Zeeschelde zes21a-1066  53993010        GaugingsGDiff                  W                     W
19 Antwerpen tij/Zeeschelde zes21a-1066  54007010           Pv.LW.Lang                  W                     W
20 Antwerpen tij/Zeeschelde zes21a-1066  53988010                HW.KK                  W                     W
21 Antwerpen tij/Zeeschelde zes21a-1066  99838010     KT-AlarmStatus.O        W_voorspeld           W_voorspeld
22 Antwerpen tij/Zeeschelde zes21a-1066  84030010             Astro.01        W_voorspeld           W_voorspeld
23 Antwerpen tij/Zeeschelde zes21a-1066  89202010             KT-det.O        W_voorspeld           W_voorspeld
24 Antwerpen tij/Zeeschelde zes21a-1066  96897010              KT-HWLW        W_voorspeld           W_voorspeld
25 Antwerpen tij/Zeeschelde zes21a-1066 110741010                    O                Vdc                   Vdc
26 Antwerpen tij/Zeeschelde zes21a-1066  53984010           O.Gaugings                  W                     W
27 Antwerpen tij/Zeeschelde zes21a-1066  54020010          O.HW.KD_NKD                  W                     W
28 Antwerpen tij/Zeeschelde zes21a-1066  99837010 KT-AlarmStatus-Max.O        W_voorspeld           W_voorspeld
29 Antwerpen tij/Zeeschelde zes21a-1066  84031010             Astro.10        W_voorspeld           W_voorspeld
30 Antwerpen tij/Zeeschelde zes21a-1066  96896010                KT-LW        W_voorspeld           W_voorspeld
31 Antwerpen tij/Zeeschelde zes21a-1066  53992010               HW.typ                  W                     W
32 Antwerpen tij/Zeeschelde zes21a-1066  53996010               Kidigi                  W                     W
33 Antwerpen tij/Zeeschelde zes21a-1066  54012010             Gaugings                  W                     W
34 Antwerpen tij/Zeeschelde zes21a-1066  54015010               LW.typ                  W                     W
35 Antwerpen tij/Zeeschelde zes21a-1066  84026010        DrempelWaak.O                  W                     W
36 Antwerpen tij/Zeeschelde zes21a-1066  84028010        AlarmStatus.O                  W                     W
37 Antwerpen tij/Zeeschelde zes21a-1066  84029010       DrempelAlarm.O                  W                     W
38 Antwerpen tij/Zeeschelde zes21a-1066  84032010             Astro.05        W_voorspeld           W_voorspeld
39 Antwerpen tij/Zeeschelde zes21a-1066  88526010         KT-LW-YAMI.O        W_voorspeld           W_voorspeld
40 Antwerpen tij/Zeeschelde zes21a-1066  88527010         KT-HW-YAMI.O        W_voorspeld           W_voorspeld
41 Antwerpen tij/Zeeschelde zes21a-1066  96842010              KT-Last        W_voorspeld           W_voorspeld
42 Antwerpen tij/Zeeschelde zes21a-1066  53991010            HW.KD_NKD                  W                     W
43 Antwerpen tij/Zeeschelde zes21a-1066  54002010          O.LW.KD_NKD                  W                     W
44 Antwerpen tij/Zeeschelde zes21a-1066  54003010                Model                  W                     W
45 Antwerpen tij/Zeeschelde zes21a-1066  54006010           Pv.HW.Lang                  W                     W
46 Antwerpen tij/Zeeschelde zes21a-1066  54014010           LW.t-h.wdw                  W                     W
47 Antwerpen tij/Zeeschelde zes21a-1066  84033010           Astro.HWLW        W_voorspeld           W_voorspeld
48 Antwerpen tij/Zeeschelde zes21a-1066  96895010                KT-HW        W_voorspeld           W_voorspeld
49 Antwerpen tij/Zeeschelde zes21a-1066  53997010              LW.Hist                  W                     W
50 Antwerpen tij/Zeeschelde zes21a-1066  53999010                Pv.HW                  W                     W
51 Antwerpen tij/Zeeschelde zes21a-1066  54001010            Base.Lang                  W                     W
52 Antwerpen tij/Zeeschelde zes21a-1066  54008010           HW.t-h.wdw                  W                     W
53 Antwerpen tij/Zeeschelde zes21a-1066  54009010        O.HWLW.Kidigi                  W                     W
54 Antwerpen tij/Zeeschelde zes21a-1066  94555010                O.01b                  W                     W
55 Antwerpen tij/Zeeschelde zes21a-1066  53990010               HW.tpk                  W                     W
56 Antwerpen tij/Zeeschelde zes21a-1066  53987010                 Base                  W                     W
57 Antwerpen tij/Zeeschelde zes21a-1066  53995010              Pv.HWLW                  W                     W
58 Antwerpen tij/Zeeschelde zes21a-1066  54011010            LW.KD_NKD                  W                     W
59 Antwerpen tij/Zeeschelde zes21a-1066  54016010         GaugingsDiff                  W                     W
60 Antwerpen tij/Zeeschelde zes21a-1066  96875010               KT-Max        W_voorspeld           W_voorspeld

Notice that the package developers can not cover a vocabulary and name mapping of these existing ts_name values and you'll have deduce it on the fly. My best guess is that with Pv.10 the 10 minute time series will be returned:

library(tidyverse)
library(wateRinfo)

tide <- get_variables("zes21a-1066") %>%
    filter(grepl("Pv.10", ts_name)) %>%
    pull(ts_id) %>%
    get_timeseries_tsid(,
                        from = "2017-11-21 08:00:00",
                        to = "2017-11-23 23:00:00",
                        datasource = 4)

Would that help?

peterdesmet commented 5 years ago

Works, thanks!