【问题标题】:Pixel-wise dryness/wetness frequencies for RasterBrick RRasterBrick R 的像素级干/湿频率
【发布时间】:2017-07-06 21:46:46
【问题描述】:

给定 rasterbrick amonthly 时间序列数据 standardized rainfall 大约 60 年,我如何在 rasterbrick 上计算以下内容,而无需将数据折叠成 @987654327 @:

Q = negative/positive number of severely dry/wet months per total months of severely dry/wet events × 100

其中severely wet 包括1.50 to 1.99 范围内的值,severely dry 包括−1.99 to −1.50 范围内的值

我更喜欢 Qraster 格式。下载数据集并执行:

dd=spei03_df
dd[1:2]<-dd[2:1]#swap lat and lon
a=rasterFromXYZ(dd)

有什么想法吗?谢谢。

Example data set can be found here

【问题讨论】:

    标签: r time-series raster frequency-analysis


    【解决方案1】:

    您可以使用raster 包中的光栅代数。这是一个计算严重潮湿的例子。最终输出 a_wet_perc 是一个栅格图层,其像元值范围为 0 到 100(以百分比表示)。您可以按照相同的逻辑创建一个栅格图层来总结严重的干燥条件。

    library(raster)
    
    # Calculate the Severe Wet
    a_wet <- a
    
    # Replace vlaues >= 1.5 and <= 1.99 to 100 
    # (Does not need to be 100. A very large number should be good)
    a_wet[a_wet >= 1.5 & a_wet <= 1.99] <- 100
    # Replace other values to 0
    a_wet[a_wet < 100] <- 0
    # Replace 100 to 1
    a_wet[a_wet == 100] <- 1
    
    # Calculate the percentage of severe wet
    a_wet_perc <- mean(a_wet) * 100
    

    【讨论】:

    • 这是非常无趣的。鉴于a 的值范围为-5 to +5,当您设置a_dry[a_dry &gt;= 1.5 &amp; a_dry &lt;= 1.99] &lt;- 100 和所有其他值&lt;100 = 0 时,这不是severely wet 范围吗?怎么可能在一个栅格中同时拥有severely wet and severely dry 百分比?这会更直观,因为我们可以使用发散的颜色在空间上显示干湿。对此有什么想法吗?再次感谢。
    • 我误读了您的严重干燥和严重潮湿的范围。我会在我的帖子中将术语从干改成湿。
    • 至于您的第二条评论。我以为你想要两个栅格图层。一个概括严重干燥,另一个概括严重潮湿。
    • 既然您知道了raster 包中的栅格代数是如何工作的,那么您只需创建自己的分类来满足您的需求。
    • 太棒了。谢谢。我会试试reclassify 函数。
    猜你喜欢
    • 2013-10-07
    • 1970-01-01
    • 2020-09-11
    • 1970-01-01
    • 2013-11-04
    • 1970-01-01
    • 2016-05-12
    • 2016-12-09
    • 1970-01-01
    相关资源
    最近更新 更多