从 netcdf 中提取特定经纬度的值

2023-12-07

我正在尝试读入 R 的 netCDF 文件。网络CDFchirps-v2.0.1981.days_p05.nc是从这里下载的:

ftp://ftp.chg.ucsb.edu/pub/org/chg/products/CHIRPS-2.0/global_daily/netcdf/p05/

该 netCDF 文件将全球每日降雨量描述为经度、纬度的函数,大小为 1.1GB

我也有一套 lon lat

dat <- structure(list(locatioID = paste0('ID', 1:16), lon = c(73.73, 86, 73.45, 86.41, 85.36, 81.95, 82.57, 75.66, 82.03, 
                          81.73, 85.66, 85.31, 81.03, 81.70, 87.03, 73.38), 
                        lat = c(24.59, 20.08, 22.61, 23.33, 23.99, 19.09, 18.85, 15.25, 26.78, 
                          16.63, 25.98, 23.28, 24.5, 21.23, 25.08, 21.11)), 
                  row.names = c(1L, 3L, 5L, 8L, 11L, 14L, 17L, 18L, 19L, 21L, 
                              23L, 26L, 29L, 32L, 33L, 35L), class = "data.frame")

library(ncdf4)  
library(raster)
temp <- nc_open("chirps-v2.0.1981.days_p05.nc")

precip = list()
precip$x = ncvar_get(temp, "longitude")
precip$y = ncvar_get(temp, "latitude")
precip$z = ncvar_get(temp, "precip", start=c(1, 1, 1), count=c(-1, -1, 1))
precip.r = raster(precip)
plot(precip.r)

我有两个问题:

  • 谁能向我解释一下 start 和 count 参数的作用是什么??ncvar_get没有给我直观的感觉。如果我想创建儒略日 252 的栅格, 我需要改变哪个论点?

  • 如何提取每个纬度 365 天的每日降雨量值dat这样我就有一个 16 * 365 天的矩阵/数据框


您可以使用以下代码从 .nc 文件中提取数据

dat <- structure(list(locatioID = paste0('ID', 1:16), lon = c(73.73, 86, 73.45, 86.41, 85.36, 81.95, 82.57, 75.66, 82.03, 
                                                              81.73, 85.66, 85.31, 81.03, 81.70, 87.03, 73.38), 
                      lat = c(24.59, 20.08, 22.61, 23.33, 23.99, 19.09, 18.85, 15.25, 26.78, 
                              16.63, 25.98, 23.28, 24.5, 21.23, 25.08, 21.11)), 
                 row.names = c(1L, 3L, 5L, 8L, 11L, 14L, 17L, 18L, 19L, 21L, 
                               23L, 26L, 29L, 32L, 33L, 35L), class = "data.frame")


temp <- brick("chirps-v2.0.1981.days_p05.nc")

xy <- dat[,2:3] #Column 1 is longitude and column 2 is latitude
xy
spts <- SpatialPoints(xy, proj4string=CRS("+proj=longlat +datum=WGS84"))
#Extract data by spatial point
temp2 <- extract(temp, spts)
temp3 <- t(temp2) #transpose raster object
colnames(temp3) <- dat[,1] #It would be better if you have the location names corresponding to the points
head(temp3)
write.csv(temp3, "Rainfall.csv")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 netcdf 中提取特定经纬度的值 的相关文章

  • 在shiny中过滤传单地图数据

    我在用传单地图设置这个闪亮的东西时遇到了麻烦 我的原帖 https stackoverflow com questions 50111566 applying leaflet map bounds to filter data within
  • R foreach问题(某些进程返回NULL)

    我遇到了问题foreach我正在 R 中使用的程序的一部分 该程序用于运行不同参数的模拟 然后将结果返回到单个列表 然后用于生成报告 当并非所有分配的模拟运行都在报告上实际可见时 就会出现问题 从各方面来看 似乎只有分配的运行的一个子集实际
  • 从命令行运行 R 代码 (Windows)

    我在名为 analysis r 的文件中有一些 R 代码 我希望能够从命令行 CMD 运行该文件中的代码 而无需通过 R 终端 并且我还希望能够传递参数并在我的代码中使用这些参数 例如就像下面的伪代码 C gt execute r scri
  • Purrr::map_df() 删除 NULL 行

    使用时purrr map df 我偶尔会传递一个数据框列表 其中一些项目是NULL 当我做 map df 返回行数少于原始列表的数据框 我想发生的事情是这样的map df calls dplyr bind rows 它忽略了NULL价值观
  • 以引用透明的方式从函数的省略号参数中提取符号

    事情又发生了 我正要按下发布答案按钮的问题被删除了 我正在寻找一种方法来从函数的省略号参数中提取绑定到符号的对象的值以及符号 也就是说 我试图以引用透明的方式从省略号中提取符号 我尝试过使用替代品和lazy dots 但没有成功 funct
  • R 中的列乘以子字符串

    假设我有一个数据框 其中包含多个组件及其在多个列中列出的属性 并且我想对这些列运行多个函数 我的方法是尝试将其基于每个列标题中的子字符串 但我无法弄清楚如何做到这一点 下面是数据框的示例 Basket F Type 1 F Qty 1 F
  • 将每列的值乘以 R 中另一个 data.frame 中的权重

    我有两个data frames df and weights 代码如下 df看起来像这样 id a b d EE f 1 this 0 23421153 0 02324956 0 5457353 0 73068586 0 5642554 2
  • r 中训练和测试数据的最小最大缩放/归一化

    我正在创建一个函数 它将训练集和测试集作为其参数 最小 最大缩放 标准化并返回训练集并使用这些same最小值和最小 最大范围的值 标准化并返回测试集 到目前为止 这是我想出的功能 min max scaling lt function tr
  • 只读取选定的列

    谁能告诉我如何仅读取下面每年数据的前 6 个月 7 列 例如使用read table Year Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec 2009 41 27 25 31 31 39 2
  • 基于时间窗口的不规则时间序列的优化滚动函数

    有没有办法使用 rollapply 来自zoo包或类似的东西 优化功能 rollmean rollmedian等 使用基于时间的窗口计算滚动函数 而不是基于大量观察的函数 我想要的很简单 对于不规则时间序列中的每个元素 我想计算一个具有 N
  • 如何仅删除单括号并保留配对的括号

    你好 我亲爱的老师 R 用户朋友们 我最近开始认真学习正则表达式 最近我遇到了一种情况 我们只想保留配对括号 并省略未配对的 这是我的样本数据 structure list t1 c Book Pg 1 Website Online Jou
  • 如何在 R 或 Python 中制作旭日图?

    到目前为止 我一直无法找到一个可以创建旭日图的 R 库约翰 斯塔斯科 http www cc gatech edu gvu ii sunburst 有人知道如何在 R 或 Python 中实现这一点吗 在极坐标投影中使用 matplotli
  • 如何从 R 中的 txt 文件读取矩阵?

    我有一个带有矩阵的txt文件 Matrix txt 重要 数字之间没有空格 0100 1001 1100 我想在 R 中将其作为矩阵读取 我该怎么做 我尝试使用 as matrix read table Matrix txt sep 但失败
  • R:如何获取该月的周数

    我是 R 新手 我想要该日期所属月份的周数 通过使用以下代码 gt CurrentDate lt Sys Date gt Week Number lt format CurrentDate format U gt Week Number 3
  • python 相当于 R 中的 get() (= 使用字符串检索符号的值)

    在 R 中 get s 函数检索名称存储在字符变量 向量 中的符号的值s e g X lt 10 r lt XVI s lt substr r 1 1 X get s 10 取罗马数字的第一个符号r并将其转换为其等效整数 尽管花了一些时间翻
  • 以编程方式将字符串宽度值插入到 sprintf() 中

    我正在尝试以编程方式将字符串宽度值插入到sprintf 格式 期望的结果是 sprintf 20s hello 1 hello 但我想插入20在同一通话中即时进行 因此它可以是任何号码 我努力了 sprintf ds 20 hello 1
  • 如何在将两根柱子保持在一起的同时熔化柱子?

    我有这种宽格式的数据 我想将其转换为长格式 Cond Construct Line Plant Tube shoot weight shoot Tube root weight root 1 Standard NA NA 2 199 95
  • 如何使用 tidymodels 和工作流集在同一数据集上拟合多个不同的线性模型

    我想评估同一数据集上多个 主要是 线性回归模型的性能 我想也许使用tidymodels包连同workflowsets workflow set 可能会起作用 我按照这个例子here https workflowsets tidymodels
  • 无法更改 RStudio 中的 R 版本

    我的 RStudio V 0 99 491 无法更改 R 版本 我以平常的方式行事Global Options gt R Version 然后它挂起并且不再工作或反应 R 运行良好的初始版本是R 3 1 0 我以前从未遇到过这样的问题 也许
  • 线性判别分析图

    如何将样本 ID 行号 作为标签添加到此 LDA 图中的每个点 library MASS ldaobject lt lda Species data iris plot ldaobject panel function x y points

随机推荐

  • 1帧内使用opengl es在ipad上最多可以绘制多少个三角形?

    ipad上一帧最多可以画多少个三角形 另外 用于绘制这些三角形的 gl 调用数量是否有限制 您在 iPad 上遇到的三角形总数的唯一限制是内存大小以及您希望渲染的速度 发送的顶点越多 应用程序将使用的内存就越多 渲染速度就越慢 例如 在我的
  • utf8' 编解码器无法解码位置 15 中的字节 0x89:起始字节无效

    这是我的项目的视图 其中我尝试使用 boto 将图像从本地系统上传到 s3 class ImageList generics ListCreateAPIView queryset Image objects all serializer c
  • 如何在gem5中启用ARM半主机?

    我尝试运行在 QEMU 上运行的半主机退出指令 mov r0 0x18 ldr r1 0x20026 svc 0x00123456 但是gem5似乎没有正确处理它并崩溃了 以下补丁将其添加到 baremetal py 但不添加到 fs py
  • jquery改变用户滚动的背景颜色

    jquery 是否有可能在用户向下滚动页面时背景动画从 50 白色变为 90 白色或其他 所以首先是颜色rgba 255 255 255 5 当用户滚动到颜色下方 210px 时become rgba 255 255 255 9 更新后的更
  • Darwin/MacOS 是否修改了 Bash?

    我想知道使用 Bash 内置命令的 Bash 脚本的可移植性 据我了解 每种 UNIX 风格都倾向于修改各种 UNIX 实用程序 但他们是否倾向于不理睬 Bash 和 Bash 内置函数呢 尤其是 MacOS 呢 据我所知 bash 在 M
  • 从 C++ 扩展中获取 MIME 类型

    有什么方法可以在给定文件扩展名的情况下获取 C 中的 MIME 类型吗 我读过有关 HKEY CLASSES ROOT 的内容 但老实说我不知道 如何使用它 我想要的是作为输入 string extension pdf string ext
  • SWT 是否分发可在任何受支持的操作系统上运行的 JAR?

    The SWT项目目前为每个受支持的操作系统维护一个可分发的版本 例如 swt 3 4 2 win32 win32 x86 zip swt 3 4 2 gtk linux x86 zip swt 3 4 2 carbon macosx zi
  • EF 6 - 如何正确执行并行查询

    创建报告时 我必须执行 3 个涉及相同上下文的独立实体的查询 因为它们很重 所以我决定使用 ToListAsync 为了让它们并行运行 但是 令我惊讶的是 我得到了一个例外 使用 EF 6 并行执行查询的正确方法是什么 我应该手动启动新任务
  • 为什么使用 LWUIT 的三星手机不支持阿拉伯字体?

    我已经在一些三星手机上测试了我的移动应用程序以进行测试 三星 Corby b3410 和三星 c6712 这些手机上未显示阿拉伯字体 但它可以在诺基亚手机上正常工作 我在用着System font用于显示阿拉伯字体 为什么这些手机不支持 如
  • Latin-1 / UTF-8 编码 php

    我有一个 UTF 8 编码与 Latin 1 混合的数据库 我认为这就是问题所在 这就是字符在数据库中的样子 should be 当我将标题设置为 然后字符就出来了 当我删除标题时 它们会像数据库中一样出现 我希望他们像这样出来 如果可能的
  • Core Haskell 将类型应用于函数意味着什么?

    我为 Core Haskell 编写了一个自定义的漂亮打印机 以便更好地研究 Core 的结构 这台漂亮打印机的要点是 它需要核心模块并在输出中包含数据构造函数 默认情况下Outputable执行好像不行 这是我运行漂亮打印机的模块的代码
  • 如何将多域用户电子邮件添加到 Azure AD

    我们有三个不同的网站 我们希望使用 Azure AD 来实现单点登录 我的问题是如何将可能拥有不同电子邮件地址的用户添加到 Azure AD 通过 API 例如 电子邮件受保护 电子邮件受保护 电子邮件受保护 etc 当我尝试通过 API
  • 如何在 Eclipse 编辑器中打开外部浏览器

    如何以编程方式使用 Eclipse 插件中的打开选项打开 Safari 等外部浏览器 try PlatformUI getWorkbench getBrowserSupport getExternalBrowser openURL new
  • 使用 PHP 创建 Web 服务

    我想用 PHP 创建一个可供不同消费者 网页 Android 设备 iOS 设备 使用的 Web 服务 我来自 Microsoft 背景 因此对如何使用 C 等进行操作很满意 理想情况下 我希望能够提供可以发送 JSON 的 REST 服务
  • 如何使用 React 导航在 mobx 商店中导航?

    我可以用this props navigation从屏幕组件进行导航 我应该如何在 mobx 存储文件中执行类似操作 或者我应该在商店中进行导航吗 我读了无需导航道具即可导航文章 但它似乎只适用于屏幕组件 对吗 有人说用global变量来存
  • 具有选择类的语义 UI 多级下拉列表不会展开

    当我尝试使用下拉菜单时search selection并选择一个子类别 它会展开到自身中 并且下拉列表中会出现一个小滚动条 如果我不添加search selection它似乎运行得很好 JSFiddle https jsfiddle net
  • JavaScript 图像 URL 验证

    我需要验证图像 url 以检查该 url 是否是以下任何扩展名的图像 jpeg jpg gif png 示例 当我们验证此 url 时http www example com asdf jpg它应该给我们真正的价值和像这样的网址http w
  • 有没有办法在热图中保留聚类但减少观察数量?

    我的数据集包含 20 列 90 个观察值 行 我生成了一个非常简洁的热图 它使用 pheatmap 包将我的数据分为两组 虽然它并不完全干净 但树状图的两个簇几乎根据我的条件将我的样本分为两个不同的组 现在我想将这组 90 个观察值减少到大
  • 单引号和双引号 html 属性之间的功能差异是什么?

    Let sEncodedHref代表一个HttpUtility HtmlAttributeEncode 是字符串 生成的 html 之间是否存在功能差异 如下所示 String Format span class blue src 0 sE
  • 从 netcdf 中提取特定经纬度的值

    我正在尝试读入 R 的 netCDF 文件 网络CDFchirps v2 0 1981 days p05 nc是从这里下载的 ftp ftp chg ucsb edu pub org chg products CHIRPS 2 0 glob