欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)分段線性插值

 更新時間:2018年12月17日 15:16:13   作者:肥宅_Sean  
這篇文章主要為大家詳細介紹了Python實現(xiàn)分段線性插值,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Python實現(xiàn)分段線性插值的具體代碼,供大家參考,具體內容如下

函數:

算法

這個算法不算難。甚至可以說是非常簡陋。但是在代碼實現(xiàn)上卻比之前的稍微麻煩點。主要體現(xiàn)在分段上。

圖像效果

代碼

import numpy as np
from sympy import *
import matplotlib.pyplot as plt


def f(x):
 return 1 / (1 + x ** 2)


def cal(begin, end):
 by = f(begin)
 ey = f(end)
 I = (n - end) / (begin - end) * by + (n - begin) / (end - begin) * ey
 return I


def calnf(x):
 nf = []
 for i in range(len(x) - 1):
  nf.append(cal(x[i], x[i + 1]))
 return nf


def calf(f, x):
 y = []
 for i in x:
  y.append(f.subs(n, i))
 return y


def nfSub(x, nf):
 tempx = np.array(range(11)) - 5
 dx = []
 for i in range(10):
  labelx = []
  for j in range(len(x)):
   if x[j] >= tempx[i] and x[j] < tempx[i + 1]:
    labelx.append(x[j])
   elif i == 9 and x[j] >= tempx[i] and x[j] <= tempx[i + 1]:
    labelx.append(x[j])
  dx = dx + calf(nf[i], labelx)
 return np.array(dx)


def draw(nf):
 plt.rcParams['font.sans-serif'] = ['SimHei']
 plt.rcParams['axes.unicode_minus'] = False
 x = np.linspace(-5, 5, 101)
 y = f(x)
 Ly = nfSub(x, nf)
 plt.plot(x, y, label='原函數')
 plt.plot(x, Ly, label='分段線性插值函數')
 plt.xlabel('x')
 plt.ylabel('y')
 plt.legend()

 plt.savefig('1.png')
 plt.show()


def lossCal(nf):
 x = np.linspace(-5, 5, 101)
 y = f(x)
 Ly = nfSub(x, nf)
 Ly = np.array(Ly)
 temp = Ly - y
 temp = abs(temp)
 print(temp.mean())


if __name__ == '__main__':
 x = np.array(range(11)) - 5
 y = f(x)

 n, m = symbols('n m')
 init_printing(use_unicode=True)

 nf = calnf(x)
 draw(nf)
 lossCal(nf)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Python?的賦值,淺拷貝和深拷貝詳解

    Python?的賦值,淺拷貝和深拷貝詳解

    這篇文章主要為大家介紹了Python?的賦值,淺拷貝和深拷貝,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助<BR>
    2021-12-12
  • django queryset 去重 .distinct()說明

    django queryset 去重 .distinct()說明

    這篇文章主要介紹了django queryset 去重 .distinct()說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • python Selenium等待元素出現(xiàn)的具體方法

    python Selenium等待元素出現(xiàn)的具體方法

    在本篇文章里小編給大家分享的是一篇關于python Selenium等待元素出現(xiàn)的具體方法,以后需要的朋友們可以學習參考下。
    2021-08-08
  • python數組的復制與列表中的pop

    python數組的復制與列表中的pop

    這篇文章主要介紹了python數組的復制與列表中的pop,?Python?中復制數組有只需使用賦值運算符、淺拷貝、深拷貝三種方法,下文詳細內容需要的小伙伴可以參考一下
    2022-04-04
  • Python?jieba庫文本處理詞性標注和關鍵詞提取進行文本情感分析

    Python?jieba庫文本處理詞性標注和關鍵詞提取進行文本情感分析

    這篇文章主要為大家介紹了Python使用中文文本處理利器jieba庫中的詞性標注和關鍵詞提取功能進行文本情感分析實例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • python 制作手機歸屬地查詢工具(附源碼)

    python 制作手機歸屬地查詢工具(附源碼)

    這篇文章主要介紹了python 制作手機歸屬地查詢工具,幫助大家更好的理解和學習使用python,感興趣的朋友可以了解下
    2021-03-03
  • python excel多行合并的方法

    python excel多行合并的方法

    這篇文章主要介紹了python excel多行合并的方法,幫助大家更好的利用python處理excel表格,感興趣的朋友可以了解下
    2020-12-12
  • 在Python反編譯中批量pyc轉?py的實現(xiàn)代碼

    在Python反編譯中批量pyc轉?py的實現(xiàn)代碼

    這篇文章主要介紹了在Python反編譯中批量pyc轉?py的實現(xiàn)代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • 控制Python浮點數輸出位數的操作方法

    控制Python浮點數輸出位數的操作方法

    在python的輸出結果中,尤其是浮點數的輸出,當我們需要寫入文本文件時,最好是采用統(tǒng)一的輸出格式,這樣也能夠增強結果的可讀性,這篇文章主要介紹了控制Python浮點數輸出位數的方法,需要的朋友可以參考下
    2022-04-04
  • Python中uuid模塊生成唯一標識符的方法詳解

    Python中uuid模塊生成唯一標識符的方法詳解

    這篇文章主要給大家介紹了關于Python中uuid模塊生成唯一標識符的相關資料,uuid庫是Python標準庫中的一個功能強大的庫,可以用于生成全局唯一標識符(UUID),文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-08-08

最新評論