最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Numpy數(shù)值積分的實現(xiàn)

 更新時間:2023年02月23日 09:21:21   作者:微小冷  
本文主要介紹了Numpy數(shù)值積分的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
連乘連加元素連乘prod, nanprod;元素求和sum, nansum
累加累加cumsum, nancumsum;累乘cumprod, nancumprod;

求和

在Numpy中可以非常方便地進行求和或者連乘操作,對于形如 x 0 , x 1 , ?   , xn?的數(shù)組而言,其求和 ∑xi或者連乘 ∏xi分別通過sumprod實現(xiàn)。

x = np.arange(10)
print(np.sum(x))    # 返回45
print(np.prod(x))   # 返回0

這兩種方法均被內(nèi)置到了數(shù)組方法中,

x += 1
x.sum()     # 返回55
x.prod()    # 返回3628800

有的時候數(shù)組中可能會出現(xiàn)壞數(shù)據(jù),例如

x = np.arange(10)/np.arange(10)
print(x)
# [nan  1.  1.  1.  1.  1.  1.  1.  1.  1.]

其中x[0]由于是0/0,得到的結果是nan,這種情況下如果直接用sum或者prod就會像下面這樣

>>> x.sum()
nan
>>> x.prod()
nan

為了避免這種尷尬的現(xiàn)象發(fā)生,numpy中提供了nansumnanprod,可以將nan排除后再進行操作

>>> np.nansum(x)
9.0
>>> np.nanprod(x)
1.0

累加和累乘

和連加連乘相比,累加累乘的使用頻次往往更高,尤其是累加,相當于離散情況下的積分,意義非常重大。

from matplotlib.pyplot as plt
xs = np.arange(100)/10
ys = np.sin(xs)
ys1 = np.cumsum(ys)/10
plt.plot(xs, ys)
plt.plot(xs, ys1)
plt.show()

效果如圖所示

在這里插入圖片描述

cumprood可以實現(xiàn)累乘操作,即

x = np.arange(1, 10)
print(np.cumprod(x))
# [     1      2      6     24    120    720   5040  40320 362880]

sum, prod相似,cumprodcumsum也提供了相應的nancumprod, nancumsum函數(shù),用以處理存在nan的數(shù)組。

>>> x = np.arange(10)/np.arange(10)
<stdin>:1: RuntimeWarning: invalid value encountered in true_divide
>>> np.cumsum(x)
array([nan, nan, nan, nan, nan, nan, nan, nan, nan, nan])
>>> np.nancumsum(x)
array([0., 1., 2., 3., 4., 5., 6., 7., 8., 9.])
>>> np.nancumprod(x)
array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.])

trapz

cumsum操作是比較容易理解的,可以理解為離散化的差分,比如

>>> x = np.arange(5)
>>> y = np.cumsum(x)
>>> print(x)
array([0, 1, 2, 3, 4])
>>> print(y)
array([ 0,  1,  3,  6, 10])

trap為梯形積分求解器,同樣對于[0,1,2,3,4]這樣的數(shù)組,那么稍微對高中知識有些印象,就應該知道[0,1]之間的積分是?,此即梯形積分

>>> np.trapz(x)
8.0

接下來對比一下trapzcumsum作用在 sin ? x \sin x sinx上的效果

from matplotlib.pyplot as plt
xs = np.arange(100)/10
ys = np.sin(xs)
y1 = np.cumsum(ys)/10
y2 = [np.trapz(ys[:i+1], dx=0.1) for i in range(100)]
plt.plot(xs, y1)
plt.plot(xs, y2)
plt.show()

結果如圖,可見二者差別極小。

在這里插入圖片描述

 到此這篇關于Numpy數(shù)值積分的實現(xiàn)的文章就介紹到這了,更多相關Numpy數(shù)值積分內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python super()函數(shù)的基本使用

    python super()函數(shù)的基本使用

    這篇文章主要介紹了python super()函數(shù)的基本使用,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • Python+Matplotlib繪制發(fā)散條形圖的示例代碼

    Python+Matplotlib繪制發(fā)散條形圖的示例代碼

    發(fā)散條形圖(Diverging Bar)是一種用于顯示數(shù)據(jù)分布的圖表,可以幫助我們比較不同類別或分組的數(shù)據(jù)的差異和相對性,本文介紹了Matplotlib繪制發(fā)散條形圖的函數(shù)源碼,需要的可以參考一下
    2023-06-06
  • python 多線程應用介紹

    python 多線程應用介紹

    python可以方便地支持多線程??梢钥焖賱?chuàng)建線程、互斥鎖、信號量等等元素,支持線程讀寫同步互斥
    2012-12-12
  • Python with語句上下文管理器兩種實現(xiàn)方法分析

    Python with語句上下文管理器兩種實現(xiàn)方法分析

    這篇文章主要介紹了Python with語句上下文管理器兩種實現(xiàn)方法,結合實例形式較為詳細的分析了Python上下文管理器的相關概念、功能、使用方法及相關操作注意事項,需要的朋友可以參考下
    2018-02-02
  • python 換位密碼算法的實例詳解

    python 換位密碼算法的實例詳解

    這篇文章主要介紹了python 換位密碼算法的實例詳解的相關資料,換位密碼基本原理:先把明文按照固定長度進行分組,然后對每一組的字符進行換位操作,從而實現(xiàn)加密,需要的朋友可以參考下
    2017-07-07
  • python根據(jù)給定文件返回文件名和擴展名的方法

    python根據(jù)給定文件返回文件名和擴展名的方法

    這篇文章主要介紹了python根據(jù)給定文件返回文件名和擴展名的方法,實例分析了Python操作文件及字符串的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-03-03
  • Python加速程序運行的方法

    Python加速程序運行的方法

    這篇文章主要介紹了Python加速程序運行的方法,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • python使用Matplotlib畫餅圖

    python使用Matplotlib畫餅圖

    這篇文章主要介紹了python使用Matplotlib畫餅圖,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Python?Pygame實戰(zhàn)之打磚塊游戲的實現(xiàn)

    Python?Pygame實戰(zhàn)之打磚塊游戲的實現(xiàn)

    這篇文章主要介紹了如何利用Python實現(xiàn)經(jīng)典的游戲—打磚塊。玩家操作一根螢幕上水平的“棒子”,讓一顆不斷彈來彈去的“球”在撞擊作為過關目標消去的“磚塊”的途中不會落到螢幕底下。感興趣的小伙伴可以了解一下
    2022-03-03
  • Python+OpenCV人臉檢測原理及示例詳解

    Python+OpenCV人臉檢測原理及示例詳解

    這篇文章主要為大家詳細介紹了Python+OpenCV人臉檢測原理及示例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12

最新評論

岐山县| 宕昌县| 忻城县| 锦州市| 宁阳县| 巨野县| 岑溪市| 连平县| 密云县| 永和县| 沁水县| 南宫市| 纳雍县| 南阳市| 辽宁省| 道真| 乌拉特后旗| 蓬安县| 新蔡县| 赣州市| 丰县| 西乡县| 林州市| 榆社县| 资中县| 全南县| 阿图什市| 搜索| 康定县| 安国市| 安阳市| 城固县| 白山市| 邛崃市| 辽阳市| 康定县| 阜城县| 莆田市| 德阳市| 平利县| 寿阳县|