[R-sig-Geo] Implementing a rolling window for stars object
Andy Teucher
@ndy@teucher @end|ng |rom gm@||@com
Wed Oct 23 19:42:23 CEST 2019
Interesting - there’s some rlang/tidy evaluation trickery going on there that I couldn’t quite figure out (I think it might be searching for yr in the wrong environment), but defining your range as a single variable, and putting that in the square brackets seems to work for me:
rng <- yr:last_yr
stars_window = ci_stars[,,,rng]
> On Oct 23, 2019, at 10:20 AM, Micha Silver <tsvibar using gmail.com> wrote:
>
>
> On 23/10/2019 19:30, Andy Teucher wrote:
>> Hi Micha,
>>
>> I can see two problems immediately with your code:
>> 1. you are using a double-colon (yr::last_yr) - the double colon is used for looking for an object in a package, so it is looking for object ‘yrs’ in package ‘yr’, which obviously doesn’t make sense. Use a single colon to create a range (like you did with 2:6)
>> 2. the object ‘last_yr’ is never defined, so even if you used a single colon to define the range yr:last_yr, it would fail as it would not be able to find object ‘last_yr’
>>
>
> Thanks,
>
> I fixed those typos (corrected script attached) and I still get this error:
>
>
> micha using tp480:R$ Rscript stars_window.R
> Loading required package: abind
> Loading required package: sf
> Linking to GEOS 3.7.1, GDAL 2.4.0, PROJ 5.2.0
> Error in eval(rlang::expr(x[[i]][!!!args])) : object 'yr' not found
> Calls: RunMK -> [ -> [.stars -> structure -> eval -> eval
> Execution halted
>
>
>
>> Cheers,
>> Andy Teucher
>>
>>> On Oct 23, 2019, at 8:28 AM, Micha Silver <tsvibar using gmail.com <mailto:tsvibar using gmail.com>> wrote:
>>>
>>> I am trying to run a function (mk.test to find MannKendall trends) using st_apply over a "rolling" window for a time series of rasters in a stars object.
>>> When I use subscript notation to slice out the window dimension with a looping variable I get an error:
>>>
>>> Error in loadNamespace(name) : there is no package called ‘yr’
>>> Calls: [ ... tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous>
>>> Execution halted
>>>
>>> However If I replace the subscript with integers it works fine. (see attached)
>>> What is the correct way to work this out?
>>>
>>> Attached is a reprex with a small subset of my data. (The script starts with a long structure, code is at the end)
>>>
>>> Thanks
>>> --
>>> Micha Silver
>>> Ben Gurion Univ.
>>> Sde Boker, Remote Sensing Lab
>>> cell: +972-523-665918
>>> <stars_window.R>_______________________________________________
>>> R-sig-Geo mailing list
>>> R-sig-Geo using r-project.org <mailto:R-sig-Geo using r-project.org>
>>> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>>
> --
> Micha Silver
> Ben Gurion Univ.
> Sde Boker, Remote Sensing Lab
> cell: +972-523-665918
>
> <stars_window.R>
More information about the R-sig-Geo
mailing list