×
注意!页面内容来自https://www.codeleading.com/article/82894130155/,本站不储存任何内容,为了更好的阅读体验进行在线解析,若有广告出现,请及时反馈。若您觉得侵犯了您的利益,请通知我们进行删除,然后访问 原网页
技术标签: python
本文主要介绍的是反距离权重插值的方法,由于本人也是刚开始学习python,所以代码部分有许多需要改进的地方,我自己写的代码存在一定的缺陷,有看不懂的地方可以去看一下其它作者的公式(第一次写博客,不太会用,所以一切从简)请大家见谅。
1、先简单介绍一下反距离权重插值:就是需要计算插值的点本身根据自身到其它已知点的距离(自己选择点,我的代码部分选取的是距离插值点最近的3个点),分别算出到各点的权重(可以自己选择,本文选择的是距离倒数的四次方),再分别拿各个权重乘以各个已知点的数值,最后求和得到所需插值点的数值。
2.代码展示
import pandas as pd
import numpy as np
from scipy.spatial import KDTree #KD树有助于寻找距离最近的点与计算距离
"""
3个点的反距离权重插值
"""
x = np.linspace(20,21,25) #已知点横坐标,纬度
y = np.linspace(100,102,50) #已知点纵坐标,经度
z1 = np.random.randn(25,50) #生成25x50的矩阵
z = np.array(z1).reshape(-1,1) #已知点数值
xi = np.linspace(20,21,50) #未知点横坐标,纬度
yi = np.linspace(100,102,100) #未知点纵坐标,经度
d = [] #已知点的坐标
for i in x:
for j in y:
a = [i,j]
d.append(a)
d1 = np.array(d)
p = [] #未知点的坐标
for i in xi:
for j in yi:
a = [i,j]
p.append(a)
p1 = np.array(p)
tree = KDTree(d1) #生成KD树
dist,ind = tree.query(p1,k = 3) #寻找最近的3个点,计算距离(默认欧式距离)
dist1 = pd.DataFrame(dist).replace(0,0.000001) #未知点到已知3个点最近距离矩阵(其中距离为0的值用0.000001代替,防止下面计算倒数出现分母为0的结果)
m = 1/(np.square(dist1)*np.square(dist1)) #距离四次方的倒数
m1 = m.sum(axis = 1)
m11 = np.array(m1).reshape(len(xi)*len(yi),1)
m2 = np.divide(m,m11) #得到权重
ind1 = ind.flatten()
newz=z[ind1].reshape(ind.shape) #得到插值点身边最近3个已知点的数值,方便下面计算
z_2 = newz*m2
z_3 = z_2.sum(axis = 1) #得到插值
z_4 = np.array(z_3).reshape(50,100)
``
【python】PCA计算权重 将分步骤基于python实现PCA计算权重,代码在pycharm中执行。 文章目录 【python】PCA计算权重 1.引入库 2.读取数据 3.数据标准化 4.PCA(主成分分析) 4.确定权重 5.对权重结果进行归一化 总结 1.引入库 将需要的库导入pycharm 2.读取数据 filename为文件名,将数据转换为dataframe格式 3.数据标准化 这里...
...
...
插值方式: nearest:最邻近插值法 zero:阶梯插值 slinear、linear:线性插值 quadratic、cubic:2、3阶B样条曲线插值...
图像随机插值法 本文主要讲解图像的插值 1、随机插值的调用 其中griddata的scipy查询链接:https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.interpolate.griddata.html 通过griddata对随机采样的图像进行插值,插值法包括:‘linear’&lsquo...
python插值方法 文章目录 python插值方法 1. numpy.interp 2. scipy.interpolate.interp1d 1. numpy.interp 函数原型: 用法: 某一点的插值结果 向量化运算 左右越界填充值 2. scipy.interpolate.interp1d 函数原型: 用法: 常规用法 通过设置参数fiil_value=‘extrapola...
...
选择器权重值的计算 规则 1、行内样式优先级specificity值为1,0,0,0 高于外部定义 如<div ="height:50px; width:50px;">Div</div>//行内样式 外部定义指经由或 2、按CSS代码中出现的顺序决定,后者CSS样式居上; 3、!important声明specificity值优先级最高 !imp...
从坐标(PointX,PointY)返回段距离和段权重 segment-distances segment-weights 演示...