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

【ArcGIS Pro】完整的nc文件整理表格模型构建流程及工具练习数据分享

学术科研啥的要用到很多数据,nc文件融合了时间空间数据是科研重要文件。之前分享过怎样将nc文件处理成栅格后整理成表格。小编的读者还是有跑不通整个流程的,再来做一篇总结篇,也分享下练习数据跟工具,如果还是弄不了的,联系小编有偿服务。

1、nc转栅格并投影

这个步骤是重要的一步,将nc文件转栅格,同时创建同名的文件夹(每年一个),将每年12个月的栅格数据存到文件夹里,定义投影。该模型要转多年的,直接用批处理即可。

27d97b06894344dba8878d270b3cb55e.png

2、批量裁剪、根据已有文件夹批量建文件夹、文件套文件批量裁剪

这三个模型是实现批量处理搭配使用的。

批量裁剪,我们要的数据是某个行政区域,上一步骤生成的tif,还需要挨个裁剪到相应的行政区域。

65ff30d9f6c8492788b3f448e28a6dcd.png

因为裁剪之后,文件夹的结构跟全国整体数据结构一致。将全国建立的各年文件夹再新建一个区域的文件夹。

2ba1707580c647229197d366fd837f59.png

由于总文件下——年份文件夹——月份tif,模型工具只能进行一次迭代。这个模型是结合批量裁剪再进行一次迭代。

7f15577b6c80420ebf3482bec57c3f04.png

3、xxxx降雨转表

区域的降雨tif,得处理成表格。

e4075b76fb0c4f4a9b169bc145e5d9ba.png

4、python再整合表格

之前文章:用numpy将nc批量转的降雨表格按市县整理成逐年逐月降雨。是用python的模块numpy整理区域的降雨,按年份整理区域的分月降雨。代码如下(有技术难度可有偿代做):

'''
将excel表格整理成,2003-2023年辽宁各市降雨量;
'''
import pandas as pd
import numpy as np

# 外面2003到2023的数组
ex_z = []  # 读取的最终列表
for j in range(2003, 2024):
    # 先读取一个文件里的Excel
    wjj = 'G:\\rain\\liaoning\\pre_' + str(j)  # 你的文件夹路径
    ex = []
    for i in range(1, 13):
        # 文件路径
        file_path = wjj + "\\" + str(i) + ".xlsx"
        # 使用pandas读取xls文件
        df = pd.read_excel(file_path)
        ex1 = []
        # 读取每行成列表
        for index, row in enumerate(df.values.tolist()):
            # print(index)
            ex1.append([row[1], round(float(row[5]) / 10, 2)])  # 之前获取的是0.1mm降雨,转化为1mm
        ex.append(ex1)
    ex_z.append(ex)

# print(ex_z[0][0][0])
#
#
# 将列表转数组
a=np.array(ex_z)
# 转换轴
b=np.transpose(a,(0,2,1,3))

# 将四维数组按年份写入Excel
c=b.tolist()
# print(c[0][0])
for i in range(len(c)):
    nian=str(2003+i)
    liem=['prov','city','city_type',nian+'01',nian+'02',nian+'03',nian+'04',nian+'05',nian+'06',nian+'07',nian+'08',nian+'09',nian+'10',nian+'11',nian+'12']
    x=c[i]
    prov='辽宁省'
    city_type='地级市'
    data=[]
    for j in range(len(x)):
        data.append([prov,x[j][0][0],city_type,x[j][0][1],x[j][1][1],x[j][2][1],x[j][3][1],x[j][4][1],x[j][5][1],x[j][6][1],x[j][7][1]
                    ,x[j][8][1],x[j][9][1],x[j][10][1],x[j][11][1]])
    df=pd.DataFrame(data,columns=liem)
    df.to_excel(nian+'.xlsx', index=False)

下面是视频讲解。

nc转表格

练习数据及模型工具

d6800337c7e44bb5ad197645d0265b0b.png

 


http://www.kler.cn/a/459026.html

相关文章:

  • PHP关键字Self、Static和parent的区别
  • AI 自动化编程对编程教育的影响
  • playwright的page.wait_for 常见用法
  • 第十一章 图论
  • 【蓝桥杯——物联网设计与开发】拓展模块4 - 脉冲模块
  • JVM对象创建过程
  • Java [后端] 开发日常记录(1)
  • go-xorm连接
  • 智能充电桩物联网方案,ESP32-C3芯片应用,设备智能互联通信
  • 快排与归并排序
  • Java-将一个大列表均分成多个小列表,每个小列表包含10个元素
  • Day60 图论part10
  • 【OTA】论文笔记--《智能网联汽车整车OTA功能设计研究》智能网联汽车OTA系统设计分析报告
  • nuscenes数据集pkl文件转txt
  • 网络安全概念详解
  • 最新版Edge浏览器加载ActiveX控件技术——alWebPlugin中间件V2.0.28-迎春版发布
  • Kafka 性能提升秘籍:涵盖配置、迁移与深度巡检的综合方案
  • MIPI相关
  • 家政预约小程序数据库设计
  • 【Mysql】Mysql/Mariadb开启binlog日志
  • STM32 高级 物联网通讯之蓝牙通讯
  • Spring AI OpenAI Spring Boot Starter 底层原理详解与技术演示
  • CSS 过渡动画效果
  • C#高级篇 反射和属性详解【代码之美系列】
  • Path-of-Thoughts:将“思维链“升级为“思维图“,三阶段框架取代单一推理,提升大模型复杂关系推理准确性至88.2%与效率提升5%
  • WPF 绘制过顶点的圆滑曲线 (样条,贝塞尔)