当前位置: 首页 > news >正文

广州企业网站建设公司哪家好wordpress改html5

广州企业网站建设公司哪家好,wordpress改html5,求手机网站,做外贸必看的网站和论坛有哪些问题描述: 若干个nc文件储存全球的1850-2014年月尺度的mrro数据(或其他数据),从1850-1到2014-12一共1980个月,要提取出最后35年1980.1~2014.12年也就是420个月的数据。 代码实现 def aaa(input_file,output_file,bianliang,start_index,en…

问题描述:

若干个nc文件储存全球的1850-2014年月尺度的mrro数据(或其他数据),从1850-1到2014-12一共1980个月,要提取出最后35年1980.1~2014.12年也就是420个月的数据。

代码实现

def aaa(input_file,output_file,bianliang,start_index,end_index):# 打开输入NetCDF文件ds = nc.Dataset(input_file, 'r')# 获取时间变量和mrro变量 这里不一定是mrro变量,名称由传入参数bianliang确定time_var = ds.variables['time']mrro_var = ds.variables[bianliang]time_indices = np.arange(start_index, end_index)time_data = time_var[time_indices]mrro_data = mrro_var[time_indices, :, :] # 创建新的NetCDF文件new_ds = nc.Dataset(output_file, 'w', format='NETCDF4')# 创建维度(这些在新数据集中还不存在)new_ds.createDimension('time', None)  # 可变长度维度,或者指定确切长度len(time_data)lat_dim = new_ds.createDimension('lat', len(ds.dimensions['lat']))lon_dim = new_ds.createDimension('lon', len(ds.dimensions['lon']))# 创建新变量times = new_ds.createVariable('time', time_var.datatype, ('time',))lats = new_ds.createVariable('lat', ds.variables['lat'].datatype, ('lat',))lons = new_ds.createVariable('lon', ds.variables['lon'].datatype, ('lon',))mrro = new_ds.createVariable(bianliang, mrro_var.datatype, ('time', 'lat', 'lon'))# 复制变量属性times.setncatts({k: time_var.getncattr(k) for k in time_var.ncattrs()})lats.setncatts({k: ds.variables['lat'].getncattr(k) for k in ds.variables['lat'].ncattrs()})lons.setncatts({k: ds.variables['lon'].getncattr(k) for k in ds.variables['lon'].ncattrs()})mrro.setncatts({k: mrro_var.getncattr(k) for k in mrro_var.ncattrs()})# 写入数据times[:] = time_data  # 确保time_data是正确的!lats[:] = ds.variables['lat'][:]lons[:] = ds.variables['lon'][:]mrro[:] = mrro_data  # 确保mrro_data是正确的!# 复制全局属性new_ds.setncatts({k: ds.getncattr(k) for k in ds.ncattrs() if k != 'history'})  # 避免覆盖我们即将设置的历史属性# 更新历史属性history = "Created by subsetting the original dataset"  # 原始数据集的历史属性可能不包含有用的信息,或者我们想要添加新的信息new_ds.setncattr('history', history)# 关闭文件new_ds.close()ds.close()print("完成")
import glob
import netCDF4 as nc
import numpy as np
import osdef get_nc_files(directory):# 使用 os.path.join 确保路径格式正确pattern = os.path.join(directory, '*.nc')nc_files = glob.glob(pattern)# 如果只需要文件名而不是完整路径,可以使用 os.path.basename 提取nc_files = [os.path.basename(file) for file in nc_files]return nc_filesstart_index = 1560  # 数据起点
end_index = 1980  # 数据终点
directory_path = './'
nc_files_list = get_nc_files(directory_path)
for ncfile in nc_files_list:print(ncfile)input_file = ncfiles  = ''s += str(ncfile)output_file = s.replace('185001', '198001')bianliang = input_file.split('_')[0] # 根据文件名称获取变量名aaa(input_file,output_file,bianliang,start_index,end_index)

将python文件和待处理文件放一起
在这里插入图片描述
运行代码
在这里插入图片描述
在这里插入图片描述
依赖库

netCDF4
numpy

高版本python直接pip install 安装?

netCDF4
numpy

低版本python(我用的3.7,用pip直接安装netCDF4总报错)
解决办法:

pip install "netCDF4<1.6.0"

安装低版本的netCDF4,搞定。

ps: 代码粗糙,欢迎交流学习。

http://www.dtcms.com/a/503468.html

相关文章:

  • ARM 架构核心知识笔记(整理与补充版)
  • 《i.MX6ULL LED 裸机开发实战:从寄存器到点亮》
  • 迈向零信任存储:基于RustFS构建内生安全的数据架构
  • 网站开发公司找哪家帮卖货平台
  • C++ Vector:动态数组的高效使用指南
  • html5微网站漂亮网站
  • C++ 分配内存 new/malloc 区别
  • Respective英文单词学习
  • 网络排错全流程:从DNS解析到防火墙,逐层拆解常见问题
  • 移动端开发工具集锦
  • 使用Nvidia Video Codec(三) NvDecoder
  • 周口规划建设局网站wordpress模板中添加短代码
  • Linux小课堂: 命令手册系统深度解析之掌握 man 与 apropos 的核心技术机制
  • 阿里云做网站官网网站改版的seo注意事项
  • 每日算法刷题Day76:10.19:leetcode 二叉树12道题,用时3h
  • 【OS笔记11】:进程和线程9-死锁及其概念
  • 贪心算法1
  • 服务器搭建vllm框架并部署模型+cursor使用经验
  • Arduino采集温湿度、光照数据
  • 32HAL——外部中断
  • 网站建设会议议程新闻营销发稿平台
  • 【图像处理】CMKY色彩空间
  • 南宁建行 网站南通网站的优化
  • 构建AI智能体:六十八、集成学习:从三个臭皮匠到AI集体智慧的深度解析
  • 从入门到精通【Redis】Redis 典型应⽤ --- 分布式锁
  • 6.5 万维网(答案见原书P294)
  • CycloneDDS:跨主机多进程通信全解析
  • Java基础语法—类型转换、表达式的自动类型提升
  • CentOS8无法使用sudo提权
  • 软件工程师招聘信息网站数据库对网站开发的作用