Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >读取多个ncdf文件并以R表示平均值

读取多个ncdf文件并以R表示平均值
EN

Stack Overflow用户
提问于 2015-02-27 09:40:28
回答 2查看 2.6K关注 0票数 0

通过使用with,尝试打开包含有15个变量的5维空间的NetCDF数据。(计算变量在矩阵1000X920中)

这个问题实际上和之前的其他问题是一样的。

我从这里其他那里得到了解释

起初我使用RNetCDF包,但经过一些试验,当包读取我的数据时,我发现不一致。最后更好地使用了ncdf软件包。

在单个文件中打开数据没有问题,但是在错误地尝试在文件夹中循环一个特定变量(例如: var no 15)超过100个数据后,程序失败了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>  days = formatC(001:004, width=3, flag="0") 
>  ncfiles = lapply (days,
> function(d){  filename = paste("data",d,".nc",sep="")
>       open.ncdf(filename) })

同样,当我为一个特定的变量尝试这样的命令时

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
> sapply(ncfiles,function(file,{get.var.ncdf(file,"var15")})

所以我的问题是,任何用特殊变量读取所有netcdf文件的解决方案,然后在一个框架内进行计算。因为在整个netcdf数据上生成变量15而失败。

谢谢你对这个问题的任何解决方案。

更新:

这是我做的最后一件事

当我写

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    library(ncdf)

files=list.files("allnc/",pattern='*nc',full.names=TRUE)

for(i in seq_along(files)) {
nc <- lapply(files[i],open.ncdf)
lw = get.var.ncdf(nc,"var15")
x=dim(lw)

(df,data.frame(lw))->df }

我可以通过> nc获取所有netcdf数据。

因此,我如何能够自动获得新名称的变量数据,比如lw1,lw2...etc,我无法应用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var1 <- lapply(files, FUN = get.var.ncdf, variable = "var15")

然后我可以用所有的数据来计算。

我尝试的另一种技术是使用RNetCDF包进行循环。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Declare data frame
df=NULL

#Open all files
files= list.files("allnc/",pattern='*.nc',full.names=TRUE)

# Loop over files
for(i in seq_along(files)) {
nc = open.nc(files[i])

# Read the whole nc file and read the length of the varying dimension (here, the 3rd dimension, specifically time)
lw = var.get.nc(nc,'DBZH')
x=dim(lw)

# Vary the time dimension for each file as required
lw = var.get.nc(nc,'var15')

# Add the values from each file to a single data.frame
}

我可以获得一个变量数据,但我只是从我的所有文件nc得到一个数据。注:我的数据名为sampe ( data20150102001.nc,data20150102002.nc.....etc)

EN

回答 2

Stack Overflow用户

发布于 2015-02-27 12:52:29

此解决方案使用NCO,而不是R。您可以使用它来检查您的R解决方案:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ncra -v var15 data20150102*.nc out.nc

这就是全部。NCO 用户指南的完整文档。

票数 2
EN

Stack Overflow用户

发布于 2017-09-20 20:24:51

您可以使用CDO的集成统计功能,但请注意,在某些系统中,文件数量仅限于256个:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cdo ensmean data20150102*.nc ensmean.nc

您可以将“平均”替换为您所选择的统计量,max、std、var、min等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28771109

复制
相关文章
R语言 读取文件
使用R读取txt文件直接使用read.table()方法进行读取即可,不需要加载额外的包。
用户1359560
2018/08/27
2.4K0
R语言  读取文件
R读取gmt文件
前面我们简单介绍过什么是gmt文件,基因矩阵转置文件格式(* .gmt)。今天我们就用R来去读gmt文件。
生信交流平台
2020/08/06
7.3K0
R读取gmt文件
android r文件丢失_读取文件
在用Eclipse做开发的时候,总是无缘无故缺少R文件,让整个项目报废,在网上查了资料后现在做一下整理。
全栈程序员站长
2022/11/09
1.2K0
spark读取多个文件夹(嵌套)下的多个文件
在正常调用过程中,难免需要对多个文件夹下的多个文件进行读取,然而之前只是明确了spark具备读取多个文件的能力。
sparkexpert
2022/05/07
3.2K0
R tips:使用lapply和do.call读取并合并多个文件
在R中做数据处理时,数据导入导出是常见操作,对于导入而言,如果源数据保存在多个文件中,那么导入后首先就需要进行合并操作。
生信菜鸟团
2020/05/17
4.3K0
R-批量文件读取
文件的批量读取,一般在拿到数据时,如果是大批量的数据,那么就需要多次的读取 10个文件以为的内容通过10行的内容可以读取,但是如果是上百个文件,那么读取的 时候就比较复杂,解决思路是通过循环进行读取
火星娃统计
2020/09/15
6910
如何使用 Python批量读取多个文件
可以看出,它会自动把你输入的内容打印出来,相当于在 whileTrue里面加上了 input。
青南
2019/09/16
10.5K0
Python fileinput模块:逐行读取多个文件
Python提供了 fileinput 模块,通过该模块中的 input()  函数,我们能同时打开指定的多个文件,还可以逐个读取这些文件中的内容。
用户8442333
2021/11/30
1.4K0
R语言技巧:读取excel文件
前面介绍了另外一种读取excel文件的方式,可以对比下。 采用gdata包来读取。
努力在北京混出人样
2019/02/18
2.6K0
R数据读取(数据文件解析)
1,控制读入的数据行数,非批处理,有点类似数据库中的指标操作,可对文件中的数据逐行操作。
云深无际
2020/10/23
2.5K0
R数据读取(数据文件解析)
R语言:快速读取txt文件
用R语言来读取600多M的txt文件,使用常用的read.table,太费时间。想起之前用readr包来读取csv、spss的、sas、excel的很快,便尝试了翻。
努力在北京混出人样
2019/02/18
4.4K0
Python读取Excel数据并以字典dict格式存储
  本文介绍基于Python语言,将一个Excel表格文件中的数据导入到Python中,并将其通过字典格式来存储的方法。
疯狂学习GIS
2023/06/26
5430
Python读取Excel数据并以字典dict格式存储
R语言读取 xlsx 和xls 文件
xlsx文件,是2007,2013,2016版本的Excel文件,R语言中可以通过openxlsx包进行读取。
邓飞
2020/07/22
11.4K0
MapReduce一次读取多个文件(详细步骤)
import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Mapper; import org.apache.hadoop.mapreduce.lib.input.FileSplit;
刘浩的BigDataPath
2021/04/13
1.5K0
MapReduce一次读取多个文件(详细步骤)
哇塞,Python读取多个Excel文件竟然如此简单
Excel Power Query具有“从文件夹获取数据”功能,允许我们加载特定文件夹中所有文件。我们可以用Python轻松地完成这项工作。工作流程如下所示:
fanjy
2021/11/10
3.4K0
哇塞,Python读取多个Excel文件竟然如此简单
快读读取并合并多个基因表达文件
经常会遇到下载的基因表达数据,是分散在多个数据文件中,而我们为了得到基因表达矩阵,则必须要做的一步就是通过R语言合并这些表达文件。所以这里我们做一下几种不同的方法的对比:
用户1359560
2020/04/22
2.5K0
快读读取并合并多个基因表达文件
R批量读取、处理及写出文件
在对同一路径下多个文件做相同处理时,可以循环读取文件夹中的文件,批量读取,处理和写入文件,会大大提高工作效率,在R语言中,处理方法如下所示。
生信编程日常
2020/07/03
7K0
R批量读取、处理及写出文件
matinal:Python 文件拷贝,比较同名文件并以较大的文件覆盖
matinal
2023/10/14
1720
R语言包gdata读取excel文件
EXCEL文件的格式有xls、xlsx这两种,这里我们采用R包是gdata的read.xls函数
努力在北京混出人样
2019/02/18
1.4K0
R语言读取txt,csv和xlsx文件
刚刚数据分析的上机课自己学了一下怎么在R环境下读取文件,本来是很简单的事情,但是因为各种原因踩了很多坑,现在来总结一下,防止以后忘记。
mumumu
2022/12/26
1.4K0

相似问题

R ncdf4不能从netcdf读取字符变量。

10

编写多个NCDF4文件

11

读取多个XML文件并以ListBox问题显示数据

21

使用R中的星号包设置ncdf文件

18

读取R (ncdf4包)中的.nc4文件时出错

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文