首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从OpenDAP数据集中提取多维变量的数据

从OpenDAP数据集中提取多维变量的数据
EN

Stack Overflow用户
提问于 2018-06-15 23:54:38
回答 1查看 76关注 0票数 0

我正在创建一个从ocean dataset中提取数据的API。

我正在使用netCDF4 python模块来处理这些数据。有一个具有输入参数time_counter,deptht,y,x的多维变量vozocrtx。

根据文档,如果我想要从数据集中提取这个特定变量的数据,我可以这样做

代码语言:javascript
复制
import netCDF4
url = 'http://navigator.oceansdata.ca/thredds/dodsC/giops/daily/201806/giops_2018061300_024.nc'
dataset = netCDF4.Dataset(url)
variable = dataset.variables['vozocrtx']
extracted_data = variable[0:1:1,0:50:1,0:10:1,0:10:1]

但是,我想要的是有一个包含提取和分片索引的变量,例如

代码语言:javascript
复制
data_indexes = 0:1:1,0:50:1,0:10:1,0:10:1
extracted_data = variable[data_indexes]

我之所以要这样做,是因为要创建一个泛型函数,该函数将根据输入(start、end和stride) * no提取数据。维度的。

我尝试了一些东西,也阅读了文档,但找不到任何有用的东西。如有任何提示或指导,我们将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2018-06-16 00:35:42

代码语言:javascript
复制
#Step 1 - create a list of all the slices

list = []
list.append(np.s_[0:1:1])
list.append(np.s_[0:50:1])
list.append(np.s_[0:10:1])
list.append(np.s_[0:10:1])    

#Step 2 - convert the list to a tuple
tuple_slice = tuple(list)    

#Step 3 - use the tuple as the index input to extract the data
variable[tuple_slice]

多亏了问题How can I create a slice object for Numpy array?Store Numpy array index in variable,我找到了解决问题的办法。

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

https://stackoverflow.com/questions/50879057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档