ค่าเซลล์สูงสุดจากแรสเตอร์แบบเรียงซ้อน


9

ฉันจะหาค่าสูงสุดของเซลล์ได้จากแรสเตอร์แบบเรียงซ้อน

Rmax <- maxValue(RAD1998.all[[1]]) 

ทำงานได้ดี แต่

Rmax <- maxValue(RAD1998.all[[2]]) 

ให้ NA

แน่นอนไม่ได้อยู่ในแรสเตอร์ซ้อน

นี่คือรหัสของฉัน:

RAD1998 <- raster(paste(getwd(), "/1998bil/1998ASC5min_ppt_spas1214_0001_19980202_0810_UTC.asc.bil", sep = ""))
list.ras <- mixedsort(list.files(paste(getwd(), "/1998bil/", sep = ""), full.names = T, pattern = ".asc.bil")) 
RAD1998.all <- stack(list.ras)

คุณกำลังมองหาสูงสุดของเลเยอร์ทั้งหมดหรือสูงสุดของแต่ละเลเยอร์หรือไม่? อย่างไรก็ตามคุณไม่ได้ใช้maxValueวิธีที่ถูกต้อง ตามหน้าช่วยเหลือคุณควรใช้อาร์กิวเมนต์เพิ่มเติม... Additional argument: layer number (for RasterStack or RasterBrick objects)

ฉันกำลังมองหาค่าสูงสุดของเลเยอร์ทั้งหมดที่จะมีสเกลเดียวกันเช่น my.at <- seq (0, ค่าเซลล์สูงสุดของทุกชั้น, เพิ่มขึ้น) ขอบคุณ Nahm
Nahm

ฉันได้รับมาพร้อมกับ cellStats # geostat-course.org/system/files/lewis_tutorAM.pdf Rad1998.max <- cellStats (RAD1998.all, 'max') Rad1998.all.max <- สูงสุด (Rad1998.max) .max
Nahm

คำตอบ:


9

ตัวอย่างต่อไปนี้แสดงสองวิธีในการรับค่า raster สูงสุดในสแต็ก การใช้งานครั้งแรกmax()จะช่วยให้คุณมีข้อมูลที่เป็นประโยชน์อื่น ๆ อีกมากมาย วิธีที่สองใช้maxValue()ซึ่งให้เพียงค่าสูงสุดของแรสเตอร์ทั้งสองในกอง

library(raster)  

# Generate some georeferenced raster data
x = matrix(rnorm(400),20,20)
rast = raster(x)
extent(rast) = c(36,37,-3,-2)
projection(rast) = CRS("+proj=longlat +datum=WGS84")

y = matrix(rnorm(400),20,20)
rast2 = raster(y)
extent(rast2) = c(36,37,-3,-2)
projection(rast2) = CRS("+proj=longlat +datum=WGS84")

raster = stack(rast, rast2)

# Now run the statistics
max(raster) # Provides min, max and additional details  # Example 1

maxValue(raster)  # Gives both values                   # Example 2...
maxValue(raster)[[1]] # Gives first in stack max value
maxValue(raster)[[2]] # Gives second in stack max value

> maxValue(raster)  # Gives both values
[1] 2.688376 2.971443
> maxValue(raster)[[1]] # Gives first in stack max value
[1] 2.688376
> maxValue(raster)[[2]] # Gives second in stack max value
[1] 2.971443
> 
> max(raster) # Provides min, max and additional details
class       : RasterLayer 
dimensions  : 20, 20, 400  (nrow, ncol, ncell)
resolution  : 0.05, 0.05  (x, y)
extent      : 36, 37, -3, -2  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0 
data source : in memory
names       : layer 
values      : -1.457908, 2.971443  (min, max)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.