Arrays 如何初始化多维数组以使用Julia';是否在不同文件中的同一个变量上使用s ncread()?

Arrays 如何初始化多维数组以使用Julia';是否在不同文件中的同一个变量上使用s ncread()?,arrays,multidimensional-array,julia,netcdf,Arrays,Multidimensional Array,Julia,Netcdf,我正在使用Julia 0.5.0中的NetCDF包从10个不同的NetCDF文件中读取相同的多维变量。有没有更好的方法来循环文件并将它们合并到一个总体多维数组中,而不是像我现在这样创建一个数组数组 目前,我的代码设置如下: files = ["file1", "file2", "file3", ... , "file10"] #length(files) = 10 var = Array{Array}(10) for i in collect(1:1:10) var[i] = nc

我正在使用Julia 0.5.0中的NetCDF包从10个不同的NetCDF文件中读取相同的多维变量。有没有更好的方法来循环文件并将它们合并到一个总体多维数组中,而不是像我现在这样创建一个数组数组

目前,我的代码设置如下:

files = ["file1", "file2", "file3", ... , "file10"] 
#length(files) = 10

var = Array{Array}(10)

for i in collect(1:1:10)
    var[i] = ncread(files[i], "x")
end
在哪里

size(var) = 10

size(var[1]) = (192,59,193) #from file1
.
.
.
size(var[10]) = (192,59,193) #from file10
这是可行的,但不是理想的格式,因为我稍后要在当前子数组中沿维度Y取平均值。理想情况下,我希望使用
ncread()
x
读入一个多维数组
var
,这样大小就像

size(var) = (10,192,59,193)
在哪里

我认为
hcat()
推!()
可能是必需的,但我不确定如何在for循环之前初始化多维数组以说明
ncread()
输出?我必须对文件中的~8个变量执行此操作,在调用
ncread()

NCO用于此操作之前,我不知道不同变量的尺寸或长度:

ncecat in*.nc out.nc
然而,用这么少的代码做这么多的事情可能会导致你的脑袋爆炸。

NCO使用以下方法:

ncecat in*.nc out.nc

然而,用这么少的代码做这么多的事情可能会让你的脑袋爆炸。

我想这正是我想要的,因为我最终创建了复合分析,但是在调用
ncecat
时,有没有办法减少不必要的变量维度?我正在合成具有不必要方位角和时间维度的轴对称分析,最好先减小输出文件的大小。如果这些维度是“不必要的”,那么它们就是我所说的退化,即大小为1,并且不占用额外的空间。退化维度和非退化维度也可以在手册中描述的浓缩之前平均(使用ncwa)或超标线(使用-d)。我认为这正是我所寻找的,因为我最终创建的是复合分析,但是在调用
ncecat
时,有没有办法减少不必要的变量维度?我正在合成具有不必要方位角和时间维度的轴对称分析,最好先减小输出文件的大小。如果这些维度是“不必要的”,那么它们就是我所说的退化,即大小为1,并且不占用额外的空间。退化和非退化尺寸也可以在手册中所述的缩合之前在(使用ncwa)或超标线(使用-d)上求平均值。
ncecat in*.nc out.nc