接下来还需要对结果进行精度分析,在前面的过程产生了上百个EXCEL文件,需要对excel文件进行合并,然后只保留最后两列,同时要删除文件中的异常值(-9999,采样时的空值),之后进行精度分析。

为便于查看变量,使用spyder编辑器。

一开始想使用python计算nash和R2,但是发现python做数据分析一点也不如matlab容易上手。

先使用python读取数据,并将数据异常值处理掉。

# -*- coding: utf-8 -*-
"""
Created on Thu May 19 10:52:24 2022@author: YIN
"""
import pandas as pd
import os# 获取所有excel文件名列表
xlsx_list = os.listdir("D:/DELL/E/R_FACTOR_zong/sample_mouth_excel")
# 将所需要的数据都追加到一个excel中
Save_name = "D:/DELL/E/R_FACTOR_zong/sample_mouth_zong/"+"zong.csv"# for循环读取列表
for xlsx_file in xlsx_list:# 跳过读取第一行,读取第8、第9列df = pd.read_excel("D:/DELL/E/R_FACTOR_zong/sample_mouth_excel/"+xlsx_file, skiprows = 1, usecols=[7,8] )df.to_csv(Save_name, encoding="utf8", index=None,mode='a') # mode ="a"表示追加的意思
data = pd.read_csv("D:/DELL/E/R_FACTOR_zong/sample_mouth_zong/"+"zong.csv",header = None)
#删除第二列含有的异常值-9999
new_data=data[~(data[1].isin([-9999]))]
# 保存数据
new_data.to_csv("D:/DELL/E/R_FACTOR_zong/sample_mouth_zong/"+"zong2.csv")

再使用matlab计算NSE与R2

%先删除含有的非数值行
zong2(any(isnan(zong2),2),:)=[];
%sim代表模拟值,obs代表实测值
obs = zong2(:,1);
sim = zong2(:,2);
%计算NSE
%代码引用自CSDN博主「Mahmut0205」的原创文章,遵循CC 4.0 BY-SA版权协议
%原文链接:https://blog.csdn.net/Mahmut0205/article/details/115695787
ave_obs = sum(obs(:))/numel(obs);   %实测数据平均数
Numerator = sum(power(obs-sim,2));  %分子
Denominator = sum(power(obs-ave_obs,2));%分母
nse = 1 - Numerator/Denominator;% NSE结果% 直接拟合线性回归模型计算R2
ans = fitlm(obs,sim)

使用python与采样工具,批量对栅格进行采样,并将采样结果转excel后进行精度分析(2)——使用matlab计算NSE (纳什效率系数NASH)与R2相关推荐

  1. python 调用HEG工具批量处理modis数据将hdf转为tif

    python 调用HEG工具批量处理modis数据将hdf转为tif 搞了2.3天才搞定,在这里做个记录,希望 可以帮到需要的朋友. HEG工具安装需要的准备工作: 一.. JAVA安装. 电脑上没有 ...

  2. python modis数据拼接_python调用HEG工具批量处理MODIS数据的方法及注意事项

    下面的代码主要用于使用python语言调用NASA官方的MODIS处理工具HEG进行投影坐标转换与重采样批量处理 主要参考 HEG的用户手册:https://newsroom.gsfc.nasa.go ...

  3. python批处理工具_python调用HEG工具批量处理MODIS数据的方法及注意事项

    下面的代码主要用于使用python语言调用NASA官方的MODIS处理工具HEG进行投影坐标转换与重采样批量处理 主要参考 HEG的用户手册:https://newsroom.gsfc.nasa.go ...

  4. arcgis python实例_arcgis python脚本工具实例教程—栅格范围提取至多边形要素类

    arcgis python脚本工具实例教程-栅格范围提取至多边形要素类 商务合作,科技咨询,版权转让:向日葵,135-4855_4328,xiexiaokui#qq.com 功能:提取栅格数据的范围, ...

  5. 【ArcGIS自定义脚本工具】批量执行栅格计算器

    文章目录 一.功能介绍 二.脚本代码 三.工具参数 四.用例 4.1 批量单位换算 4.2 批量计算植被覆盖度 4.3 批量填充空值 系列文章目录: ArcGIS自定义脚本工具 一.功能介绍 功能 将 ...

  6. 【kimol君的无聊小发明】—用python写图片格式批量处理工具

    [kimol君的无聊小发明]-用python写图片格式批量处理工具 前言 一.思路分析 二.调整尺寸 三.调整大小 四.整合代码 写在最后 前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ ...

  7. Python写图片格式批量处理工具!你还一张一张转格式吗?

    前言 某个夜深人静的夜晚,夜微凉风微扬,月光照进我的书房~ 当我打开文件夹以回顾往事之余,惊现许多看似杂乱的无聊代码.我拍腿正坐,一个想法油然而生:"生活已然很无聊,不如再无聊些叭" ...

  8. python写的一个-批量下载股票年报的小工具

    python写的一个-批量下载股票年报的小工具 from urllib import request import requests import os import openpyxl# print( ...

  9. Python结合冰点下载工具批量下载文档

    Python结合冰点下载工具批量下载文档 先解释一下etree和XPath 配合使用 # lxml-etree读取文件from lxml import etreehtml = etree.parse( ...

最新文章

  1. Java基础之this关键字的作用
  2. wkwebview 文件服务器,WKWebView 加载沙盒图片和音视频文件失败
  3. go语言中将函数作为变量传递
  4. 机器学习常见知识点自查50问与答
  5. ASP.NET Web Pages 的冲突版本问题
  6. 【硬盘整理】使用UltimateDefrag将常用文件放置在磁盘最外圈
  7. 服务业小店店主生活和工作洞察报告
  8. C# Windows 服务
  9. VS-C++ 调试----调试信息输出至调试器(输出界面)
  10. 别人:OpenCV学习笔记(一)——安装配置、第一个程序(http://blog.csdn.net/yang_xian521/article/details/6894228)...
  11. 树莓派开发界面显示温度_关于树莓派linux开发板
  12. .NET简谈观察者模式
  13. 1006:Hello World
  14. Windows7 VS2015 下编译 PythonQt3.2
  15. 如何使用outlook配置qq邮箱
  16. java jtextarea 事件_JTextArea事件处理
  17. Microsoft Excel 单元格行高和列宽
  18. 14年至22年,我与世界杯的那些二三事
  19. xargs笔记——xargs和mv配合
  20. PHP基础知识 - PHP函数大全

热门文章

  1. android+蓝牙体温计,如何制作一个带蓝牙功能的电子体温计?
  2. 下载MoveIt!,并在ros中为自己的机械臂配置MoveIt,出现错误 No root/virtual joint specified in SRDF. Assuming fixed joint解决
  3. 易语言QQ快捷登录源码
  4. 【python】上传 Python 包到 pypi 官网
  5. 设计模式---访问者模式
  6. Qt版Word文字处理软件
  7. JNI之C++调用Java类 ——java.lang.String
  8. ajax实现登录页面跳转,Ajax登录功能实现
  9. 如何用ChatGPT 写了篇文章!
  10. 两端同时写命名管道的测试程序