각 시간 간격 (불규칙)에서 바이오 매스를 나타내는 래스터 레이어의 시계열을 포함하는 큰 RasterBrick
개체가 있습니다. 내가 필요한 것은 두 개의 연속 된 기간 (difference in biomass = current biomass layer - last weeks biomass layer
) 사이의 바이오 매스의 차이에 대한 시계열입니다. 내 생각에 루프를 사용하거나 적용 함수 중 하나를 사용하여 RasterBrick
을 수행하고 각 RasterLayer
에는 시계열의 앞부분에있는 빼기 함수를 적용하십시오. RasterBrick
은 실제 시간 소인이 반드시 중요하지 않도록 주문됩니다. 예제를 찾으려고 노력했지만 진전을 이루지 못했습니다. 모든 포인터는 매우 감사하겠습니다.순차 레이어 간의 차이를 계산하는 RasterBrick을 통한 루프
나는 다음에 내 상황의 빠른 예를 제공하고 있습니다 :
library(raster)
임의 설정 (10)의 래스터 레이어를 RasterStack
에 이제r <- raster(ncol=10, nrow=10)
;b <- brick(sapply(1:10, function(i) setValues(r, rnorm(ncell(r), i, 3))))
내가 가진 RasterBrick
포함 9 층 필요
바이오 매스 = 현재 바이오 매스 층 - 지난 주 바이오 매스 층의 차이.
무엇이 wbout 부분 집합 (r, 2 : nlayers (r)) - 부분 집합 (r, 1 : (nlayers (r) -1)) – mdsumner
@mdsumner. 너무 간단! 훌륭하게 일했다. 시간 내 줘서 고마워. – doncarlos
r <- brick (r1, r2, r3 ... rn); rasdiff <- calc (r, fun = diff) – Arihant