数据处理
文章平均质量分 52
沈帅杰
作物栽培与耕作学博士,主要从事农业遥感和作物模型研究
展开
-
python实现裂区试验方差分析
方差分析(Analysis of Variance,ANOVA)是一种统计方法,用于比较三个或三个以上组别的平均值是否存在显著差异。它通过比较组内变异和组间变异的大小来判断组别间的平均值是否有显著差异。方差分析的基本假设包括对各组数据的正态性、方差齐性和独立性的要求。通过方差分析,可以得出组别间的平均值是否存在显著差异,以及各组之间的比较结果。方差分析是一种重要的统计方法,可以帮助研究者进行多组别的平均值比较和因素影响分析。数据要求的格式为长表,内容包括主区因子、幅区因子、区组和各个变量的数据这些列。原创 2024-02-24 08:47:15 · 1025 阅读 · 0 评论 -
python应用之小麦生育期气象因子计算——基于pandas库
利用python对气象数据进行分时段统计计算原创 2023-02-15 20:34:09 · 949 阅读 · 1 评论 -
Word内容解析之图表数据获取
Word文件分解及内容解析原创 2022-12-22 10:34:46 · 1508 阅读 · 0 评论 -
土壤水分特征参数估计(soil water characteristic)
基于土壤质地的土壤水分特征估算原创 2022-04-04 22:01:27 · 3241 阅读 · 18 评论 -
R语言基础学习笔记
最近在看一些R语言,顺便记录一下R语言的基础操作,以后查找方便R语言更多的用于数据分析中,算是一个比较有特色的一个语言学习的主要内容为数据类型数据结构函数控制流(判断循环)文件读取数据类型R数据类型主要为字符character,数字numeric,和逻辑值logicalis.numeric()可以判断类型as.numeric()可转换类型,这与一般语言基本类似,不过一般数值型分为浮点、整型等数据结构结构主要为向量 数组 矩阵 数据框 列表等,向量是R语言的基础,单个数字也是单个向量,原创 2021-08-05 22:53:12 · 580 阅读 · 0 评论 -
ImportError:DLL load failed:找不到指定模块的解决方法
今天换个电脑安装nlopt优化包后一直出现找不到C++编译的_nlopt模块,包的内容如下图所示。网上说的原因可能是路径不对、版本不对然后在非官方python下载库里下载64位的nlopt, 通过本地安装完美解决问题64位里面长这样说明以前的版本和64位不太兼容...原创 2021-04-18 08:29:50 · 274 阅读 · 0 评论 -
非线性优化算法求解线性规划(python)
Nlopt是一种求解非线性模型最优解的一种集合算法,尝试一下线性模型中的应用问题:x1+x2+x3<=956x1+5x2+2x3<=4005x1+2x2<=20012x1+10x2+16x3<1200x1,x2,x3>=0使得6x1+4x2+3x3最大这个其实可以用Excel或者单纯搜索法手动计算,这里测试下nlopt中的SUBPLEX算法在上面的应用import nlopt # 导入模块# 定义代价函数class ObjectiveFunction(原创 2021-04-05 10:58:18 · 1716 阅读 · 3 评论 -
python 提取图片中绿色植被,计算冠层覆盖度
任务描述提取绿色植被部分对应的红外光谱(即红绿蓝三波段提取绿色,掩膜到红外波段)import cv2import numpy as np# 第一种办法--------------------------------------------------------------im=cv2.imread('FLIR06.jpg')#提取图像的三个通道B, G, R = cv2.split(im)#计算植被指数cive = 0.441*R-0.811*G+0.385*B+18.78745g原创 2021-02-20 19:58:23 · 5330 阅读 · 7 评论 -
S-G滤波之包络滤波
由于遥感观测总是受到云层,大气影响,总会造成植被指数骤降问题,包络滤波的就是根据植被的特性,将骤降值认为是错误值,选择最大值进行滤波SG滤波代码参考&后来&博客定义滤波函数import pandas as pdimport matplotlib.pyplot as plt#%% SG_filterimport numpy as npfrom pandas.plotting import register_matplotlib_convertersregister_matplo原创 2021-01-23 19:29:03 · 3212 阅读 · 3 评论 -
python:有序的列表中模糊匹配给定的数值
给定一个值,在列表中查找近似的对应的值列表需要有序,正序逆序均可from bisect import bisect_leftdef takeClosest(myList, myNumber): if myNumber >= max(myList): return max(myList) elif myNumber <= min(myList): return min(myList) if myList[0] < myList[1原创 2021-01-01 17:17:02 · 899 阅读 · 0 评论 -
用python对Excel每列不确定个数的元素转换为行
目的如上图,每列有很多相同的数值,想要每个编号的病级转成一行但手动复制太慢先读取数据获取每个编号的个数import pandas as pddata = pd.read_excel(r'C:\Users\Desktop\data.xlsx')count = data.groupby(by='编号').sum()创建一个字典储存结果,对data进行循环,先循环编号,再循环编号内数据result = {}value = []h=0for i in range(359): fo原创 2020-11-04 19:00:05 · 393 阅读 · 1 评论 -
python将nc文件转为tiff
import numpy as npimport netCDF4 as ncfrom osgeo import gdal,osrvar = 'SA'data = r'C:\Users\13290\Desktop\soil data\{}.nc'.format(var)f = nc.Dataset(data)var_lon = f['lon'][:]var_lat = f['lat'][:]data = f[var][0, :]data_arr = np.asarray(data)dat.原创 2020-08-06 11:24:49 · 7901 阅读 · 21 评论 -
netCDF4(.nc)文件读取转为tif或csv(python)
.nc文件(network Common Data Format)文件是气象上常用的数据格式,python上读取.nc使用较多的库为netCDF4这个库。基本操作参考fangzuliang的博客"""author: shuaijieintro: date: 08/03/2020 18:47"""import netCDF4 as ncimport matplotlib.pyplot as pltimport pandas as pdimport seaborn as snsimport原创 2020-08-05 17:34:40 · 6711 阅读 · 8 评论 -
对有重复的结果筛选
结果每三个为一个重复,选择其中两个差距小的平均数据如下"""author: shuaijieintro: 在三个测氮的值中选择两个相近的平均date: 07/27/2020 11:28"""import pandas as pddef main(): fp = pd.read_excel(r'C:\Users\admire\Desktop\测氮结果示例.xlsx') # 读取数据 result = [] identify = [] for i in r原创 2020-07-27 16:22:09 · 212 阅读 · 0 评论