使用 r 中的栅格包聚合季节平均值

2023-12-24

我正在尝试将每日数据(35 年)汇总到每月,然后使用 R 中的栅格包计算季节性平均值(我知道如何使用 CDO 执行此操作)。下面是我的代码,它输出所有年份的 4 个季节平均值(140 层)。我怎样才能循环输出仅 4 层(对于 4 个季节)?我感谢您的帮助。

dailydata <- brick ("dailyrain.nc")  
dates <- seq(as.Date("1981-01-01"), as.Date("2015-12-31"), by="day")  
months <- format(dates, "%Y-%m")

Aggregate2Monthly <- function(x) {  
  agg <- aggregate(x, by=list(months), sum)  
  return(agg$x)  
}  
mothlydata <- calc(dailydata, Aggregate2Monthly) 

mondates <- seq(as.Date("1981-01-01"), as.Date("2015-12-31"), by="month")  
years <- format(mondates, "%Y")  
seasons.def=c(1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4)  
years.seasons <- paste(years, seasons.def, sep="-") 

nyears <- years[!duplicated(years)]  
nseas <- seasons.def[!duplicated(seasons.def)] 

Aggregate2Seasons <- function(x) {  
  agg <- aggregate(x, by=list(years.seasons), mean)  
  return(agg$x)  
}  
seasonsdata <- calc(mothlydata, Aggregate2Seasons)  

您希望按年份和月份的组合进行聚合。

months <- format(dates, "%Y-%m")

分组月份(根据您的评论):

groups <- function(x) {
    d <- as.POSIXlt(x)

    ans <- character(length(x))
    ans[d$mon %in%  0:1] <- "JF"
    ans[d$mon %in%  2:4] <- "MAM"
    ans[d$mon %in%  5:8] <- "JJAS"
    ans[d$mon %in% 9:11] <- "OND"
    ans
}

Now use groups(dates)作为分组变量。查看:

data.frame(dates, groups(dates))
##            dates groups.dates.
## 1     1981-01-01            JF
## 2     1981-01-02            JF
## 3     1981-01-03            JF
## 4     1981-01-04            JF
## 5     1981-01-05            JF
## 6     1981-01-06            JF
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 r 中的栅格包聚合季节平均值 的相关文章

  • rvest open.connection(x, "rb") 中出现错误:已达到超时

    我正在尝试从中抓取内容http google com http google com 错误信息就出来了 library rvest html http google com open connection x rb 中的错误 已达到超时另外
  • R 中的优化函数可以接受目标、梯度和粗麻布吗?

    我有一个想要优化的复杂目标函数 优化问题需要相当长的时间来优化 幸运的是 我确实有可用的函数的梯度和粗麻布 R 中是否有一个优化包可以接受所有这三个输入 optim 类不接受 Hessian 矩阵 我已经扫描了用于优化的 CRAN 任务页面
  • 运行 R.exe 会创建临时文件吗?

    我在想 是否启动 R exewindows创建临时文件并 是否解释类似x lt 5写入那些临时文件 如果创建了临时文件 它们存储在哪里 如果我启动多个 R exe 实例会发生什么情况 他们会共享并覆盖彼此的临时文件吗 R 的每个实例都有自己
  • R 中多类分类的 ROC 曲线

    我有一个包含 6 个类别的数据集 我想绘制多类别分类的 ROC 曲线 Achim Zeileis 给出的第一个答案非常好 R中使用rpart包的ROC曲线 https stackoverflow com questions 30818188
  • 更改 ggplot 条形图填充颜色

    有了这个数据 df lt data frame value c 20 50 90 group c 1 2 3 我可以得到一个条形图 df gt ggplot aes x group y value fill value geom col c
  • 当按多列分组时,如何命名 dplyr 中的 group_split 列表

    我在 dplyr 中使用 group split 在分割了多个列后 我很难命名列表 当我们按一列分组时 我知道该怎么做here https stackoverflow com questions 57107721 how to name t
  • 在 R 中将文本文件拆分为段落文件

    我正在尝试将一个巨大的 text 文件拆分为多个 text 文件 每个文件仅包含一个段落 让我举个例子 我需要这样的文字 这是第一段 这没有任何意义 因为这只是一个例子 这是第二段 和前一段一样毫无意义 另存为两个独立的 txt 文件 其中
  • 将非平凡函数应用于 data.table 的有序子集

    Problem 我正在尝试使用我新发现的 data table 功能 永久 来计算一堆数据的频率内容 如下所示 Sample Channel Trial Voltage Class Subject 1 1 1 196 82253 1 1 1
  • 有条件地将可选组替换为 gsub

    一位用户问我如何做到这一点如何使 ggplot 图例中的选定单词变为斜体 https stackoverflow com questions 76054997 how to italicize select words in a ggplo
  • 使用facet时ggplot2控制每行的面板数量?

    Is it possible to control the number of panels per row in a ggplot I can only get an equal number of panels on each row
  • 在 r 中的 unique() 函数中使用管道不起作用

    我在使用管道运算符 gt 和 unique 函数时遇到一些麻烦 df data frame a c 1 2 3 1 b a unique df a no problem here df gt unique a not working her
  • 为 RStudio Server 1.0.44 配置日志目录

    我在 CentOS 7 上运行 RStudio Server 1 0 44 根据文档 https support rstudio com hc en us articles 200554766 RStudio Server Applicat
  • 使用 Rcpp 得出斐波那契数列的意外结果

    我刚刚开始使用Rcpp很抱歉 如果我错过了一个简单的步骤或类似的东西 我已经尝试过这个 sourceCpp library Rcpp sourceCpp code include
  • R中不同级别的李克特分组

    我想使用 Likert 包 并按变量分组并绘制结果 问题是我想要可视化的变量有不同的级别 有没有解决的办法 一个简单的例子来说明我的问题 library reshape library likert foo lt data frame ca
  • 网页抓取(R 语言?)

    我想获取中间栏中的公司名称this http www consumercomplaints in bysubcategory mobile service providers page 1 html页面 以蓝色粗体书写 以及登记投诉者的位置
  • 如何从类外部更改公共 R6 类方法?

    我希望能够在我的 R6 类中重新定义公共方法 以便它根据该类保存的数据类型进行更改 如下所示 library R6 Simple lt R6Class Simple public list dt mtcars my print functi
  • R 的 dplyr 切片中的奇怪行为

    打电话时slice df i 在 R 的 dplyr 包中 如果我要求的行索引不存在 nrows lt i 它似乎返回除组中的第一行之外的所有行 就像我调用的那样slice df 1 例如 library dplyr c1 lt c a b
  • R Shiny - 修复了 Shiny 仪表板中的侧边栏和主标题

    我有一个简化的闪亮仪表板 请参阅下面的代码 我想修复侧边栏和主标题 因此 在其他帖子的帮助下 我编写了一个 CSS 文件来解决该问题 sidebar color FFF position fixed width 220px white sp
  • Rglpk - 梦幻足球阵容优化器 - For 循环输出的 Rbind

    我有一个使用 Rgplk 的梦幻足球阵容优化器 它使用for循环生成多个最佳阵容 其数量由用户输入 代码如下 Lineups lt list for i in 1 Lineup no matrix lt rbind as numeric D
  • 为 ggplot 定义新的尺度轴变换

    我正在尝试创建一个squared使用 y 轴变换scales trans new但遇到错误 MWE data data frame x 1 10 y runif 10 z rnorm 10 10 library ggplot2 ggplot

随机推荐

  • Visual Studio Code - C# 控制台应用程序

    可能是重复或非常基本的问题 我最近在 Windows 上下载了 Visual Studio Code 并尝试打开现有的 Hello World 控制台应用程序 我已经下载了相同的 C 扩展 您能否指出我可以在其中找到配置 VS Code 的
  • JQuery 改变表格单元格的内容

    好的 这是一个令人尴尬地简单的问题 为什么下面的 jQuery 示例不起作用 显然应该将表中的 a 更改为 hello HTML 代码 table tr td a td td b td tr table JavaScript JQuery
  • 如何在 .net 中以 4-2-2 格式保存高质量的 jpeg?

    当我使用 bitmap save 保存 jpg 文件时 当我指定编码器和质量时 它会保存为 jpeg 4 1 1 但当我不指定编码器和质量时 它会保存为 4 2 2 我想将其保存为 4 2 2 其质量比默认值更高 使用 bitmap sav
  • /usr/local/bin 和 /usr/local/share 的权限问题

    我在新的 MacBook 上使用 OS X Yosemite 刚刚安装了 Homebrew 和一些必需的软件包 最近搬到了这台新计算机 我注意到偶尔当我安装新的brew 软件包时出现链接错误 由于某种原因 权限 usr local bin
  • JS Cookie 设置在 2 个位置,不会覆盖第一个设置

    我在两个不同的页面上使用相同的脚本来设置相同的 cookie 我的假设是 即使两个页面的路径 略有不同 它们也会简单地覆盖 cookie 而不是复制其中的条目 我的第一页的路径是 example com classifieds busine
  • Java 内存使用情况

    我无法理解 Java 内存的使用情况 我有一个应用程序 其最大内存大小设置为 256M 然而 在某个时间点 我可以看到根据任务管理器 它占用了 700MB 不用说 当发生这种情况时 所有其余的应用程序都会有点反应迟钝 因为它们可能已被换出
  • 为什么这个 SVG 的宽度没有用 ng-attr-width 设置?

    我有一个非常简单的网页来尝试隔离我不理解的 ng 绑定 div div
  • 如何保存完整的网页

    有没有办法使用WebDriver保存完整的网页 目前我执行 getPageSource 然后将所有内容放入 html 本地文件中 但保存的页面形状不佳 奇怪的字符 没有图像 所有元素向下偏移 请参阅下面我使用的代码 Test public
  • 是否可以将我们的对称算法添加到 OpenSSL 中?

    我想将我的对称加密算法添加到 OpenSSL 中 并将其用作 SSL 协议中的对称算法 我需要使用测试它s client 所以我需要一种方式来表示 OpenSSL 将其用作对称算法 OpenSSL 使用 RSA 进行密钥交换阶段就足够了 我
  • 为动态创建的面板添加鼠标单击事件[重复]

    这个问题在这里已经有答案了 您好 我正在用 C 开发一个 Windows 窗体应用程序 我有一个 FlowLayoutPanel 里面有一个动态面板列表 如何为 FlowLayoutPanel 内的面板添加鼠标单击事件 谢谢这个 但是我可以
  • 在 SQL Server 2016 中将 JSON 转换为表

    我正在开发一个 Web 项目 其中客户端应用程序通过 JSON 与数据库进行通信 最初的实现是在 SQL Server 2012 中进行的 不支持 JSON 因此我们实现了一个处理解析的存储函数 现在我们正在转向 2016 支持 JSON
  • 解组时 JAXB 可以获得 XML 注释吗?

    我正在解析一个XML与 JAXB 但XML最后有一条评论 我想解析它来存储它 Xml
  • 完全独立于脚本运行命令[重复]

    这个问题在这里已经有答案了 我最近遇到了一些情况 我想完全独立地启动命令 并且在与脚本不同的进程中 相当于将其输入终端 或者更具体地说 将命令写入 sh 或 desktop 并双击它 我的要求是 我可以关闭 python 窗口而不关闭应用程
  • Eclipse 无法创建就地编辑器

    我有一个故障排除问题 我的 Eclipse 不希望在包编辑器中打开类 Error what i m having 但是 文件是通过 打开方式 gt 文本编辑器 打开的 这看起来有点像魅力 请帮助 我在我的中遇到了这个问题filename x
  • 允许用户使用 cefsharp 浏览器通过鼠标滚轮进行缩放

    我正在运行 cefsharp 75 我想使用 ctrl 键和鼠标滚轮打开缩放功能 我的事件处理程序从未被触发 如果按住 ctrl 并使用鼠标 屏幕将不会移动 所以控件内部有一些东西并处理事件 我只是缺少一个设置吗 我添加了鼠标和键盘缩放 在
  • Applescript 问题 - 将曲目添加到播放列表

    说实话 我什至都不好意思问这个问题 我有一个 Applescript 它应该构建一堆完整专辑的播放列表 除了将曲目实际添加到播放列表之外 一切正常 这是相关代码 repeat with theAlbum in randAlbums set
  • 动态表单,带或不带多部分/表单数据

    我正在用java设计一个简单的CRUD框架 在我的HTML页面中 我有一个动态表单 2个带有用于创建和更新文件上传的多部分 1个没有文件上传和用于删除的多部分 服务器端 请求调制器使用以下命令检查所有参数request getParamet
  • 合计投票结果

    我有一张选票 每个选民获得 3 票 从 10 名不同的候选人中进行选择 投票 1 得 3 分 投票 2 得 2 分 投票 3 得 1 分 我有以下 SQL 查询来计算每次投票获得的总分 因此投票 1 2 和 3 的结果是分开的 我需要做的是
  • time.Duration 类型微秒值到毫秒的转换

    我正在使用 go ping https github com sparrc go ping https github com sparrc go ping 用于非特权 ICMP ping 的 golang 库 timeout time Se
  • 使用 r 中的栅格包聚合季节平均值

    我正在尝试将每日数据 35 年 汇总到每月 然后使用 R 中的栅格包计算季节性平均值 我知道如何使用 CDO 执行此操作 下面是我的代码 它输出所有年份的 4 个季节平均值 140 层 我怎样才能循环输出仅 4 层 对于 4 个季节 我感谢