You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think this may be related to this issue, but it might just be operator error. I'm helping to make the tidysdm R package work with both terra and stars but I'm hitting a snag.
I'm looking to make a round trip excursion starting with a single attribute SpatRaster with time bands. The conversion to stars works as expected, but getting back to the original SpatRaster leaves me scratching my head. Is there a trick to converting a single attribute multi-layer stars object to the same as a SpatRaster?
The example below is an adaption of the one used in the earlier issue.
library(terra)
#> terra 1.7.78
library(stars)
#> Loading required package: abind#> Loading required package: sf#> Linking to GEOS 3.11.0, GDAL 3.5.3, PROJ 9.1.0; sf_use_s2() is TRUEs<- rast(system.file("ex/logo.tif", package="terra"))
time(s) <- as.Date("2001-05-04") +0:2ss<- c(s, s)
time(ss) <- as.Date("2001-05-04") +0:5
(x<- c(ss[[1:3]], ss[[1:2]]))
#> class : SpatRaster #> dimensions : 77, 101, 5 (nrow, ncol, nlyr)#> resolution : 1, 1 (x, y)#> extent : 0, 101, 0, 77 (xmin, xmax, ymin, ymax)#> coord. ref. : Cartesian (Meter) #> sources : logo.tif (3 layers) #> logo.tif (2 layers) #> names : red, green, blue, red, green #> min values : 0, 0, 0, 0, 0 #> max values : 255, 255, 255, 255, 255 #> time (days) : 2001-05-04 to 2001-05-06
(s= st_as_stars(x))
#> stars object with 3 dimensions and 1 attribute#> attribute(s):#> Min. 1st Qu. Median Mean 3rd Qu. Max.#> red.green.blue.red.green 0 136 203 185.6155 254 255#> dimension(s):#> from to offset delta refsys point values#> x 1 101 0 1 Cartesian (Meter) FALSE NULL#> y 1 77 77 -1 Cartesian (Meter) FALSE NULL#> time 1 5 NA NA Date NA 2001-05-04,...,2001-05-05#> x/y#> x [x]#> y [y]#> time
as(s, "SpatRaster")
#> class : SpatRaster #> dimensions : 77, 101, 5 (nrow, ncol, nlyr)#> resolution : 1, 1 (x, y)#> extent : 0, 101, 0, 77 (xmin, xmax, ymin, ymax)#> coord. ref. : Cartesian (Meter) #> source(s) : memory#> names : time2001-05-04, time2001-05-05, time2001-05-06, time2001-05-04, time2001-05-05 #> min values : 0, 0, 0, 0, 0 #> max values : 255, 255, 255, 255, 255
sessionInfo()
#> R version 4.4.1 (2024-06-14)#> Platform: x86_64-apple-darwin20#> Running under: macOS Sonoma 14.6.1#> #> Matrix products: default#> BLAS: /Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/lib/libRblas.0.dylib #> LAPACK: /Library/Frameworks/R.framework/Versions/4.4-x86_64/Resources/lib/libRlapack.dylib; LAPACK version 3.12.0#> #> locale:#> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8#> #> time zone: America/New_York#> tzcode source: internal#> #> attached base packages:#> [1] stats graphics grDevices utils datasets methods base #> #> other attached packages:#> [1] stars_0.6-6 sf_1.0-17 abind_1.4-8 terra_1.7-78#> #> loaded via a namespace (and not attached):#> [1] cli_3.6.3 knitr_1.48 rlang_1.1.4 xfun_0.48 #> [5] DBI_1.2.3 KernSmooth_2.23-24 glue_1.8.0 htmltools_0.5.8.1 #> [9] e1071_1.7-16 rmarkdown_2.28 grid_4.4.1 evaluate_1.0.0 #> [13] classInt_0.4-10 fastmap_1.2.0 yaml_2.3.10 lifecycle_1.0.4 #> [17] compiler_4.4.1 codetools_0.2-20 fs_1.6.4 Rcpp_1.0.13 #> [21] rstudioapi_0.16.0 digest_0.6.37 class_7.3-22 reprex_2.1.1 #> [25] parallel_4.4.1 magrittr_2.0.3 tools_4.4.1 withr_3.0.1 #> [29] proxy_0.4-27 units_0.8-5
I think this may be related to this issue, but it might just be operator error. I'm helping to make the tidysdm R package work with both
terra
andstars
but I'm hitting a snag.I'm looking to make a round trip excursion starting with a single attribute
SpatRaster
with time bands. The conversion tostars
works as expected, but getting back to the originalSpatRaster
leaves me scratching my head. Is there a trick to converting a single attribute multi-layerstars
object to the same as aSpatRaster
?The example below is an adaption of the one used in the earlier issue.
Created on 2024-10-09 with reprex v2.1.1
Cheers,
Ben
The text was updated successfully, but these errors were encountered: