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

NumPy 數(shù)學(xué)函數(shù)及代數(shù)運(yùn)算的實(shí)現(xiàn)代碼

 更新時(shí)間:2018年07月18日 13:44:52   作者:MCFON  
這篇文章主要介紹了NumPy 數(shù)學(xué)函數(shù)及代數(shù)運(yùn)算的實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

一、實(shí)驗(yàn)介紹

1.1 實(shí)驗(yàn)內(nèi)容

如果你使用 Python 語言進(jìn)行科學(xué)計(jì)算,那么一定會接觸到NumPy。NumPy 是支持 Python 語言的數(shù)值計(jì)算擴(kuò)充庫,其擁有強(qiáng)大的多維數(shù)組處理與矩陣運(yùn)算能力。除此之外,NumPy 還內(nèi)建了大量的函數(shù),方便你快速構(gòu)建數(shù)學(xué)模型。

1.2 實(shí)驗(yàn)知識點(diǎn)

  • NumPy 安裝
  • NumPy 數(shù)值類型介紹

1.3 實(shí)驗(yàn)環(huán)境

  • Python3
  • Jupyter Notebook

1.4 適合人群

本課程難度為一般,屬于初級級別課程,適合具有 Python 基礎(chǔ),并對使用 NumPy 進(jìn)行科學(xué)計(jì)算感興趣的用戶。

二、數(shù)學(xué)函數(shù)

使用 python 自帶的運(yùn)算符,你可以完成數(shù)學(xué)中的加減乘除,以及取余、取整,冪次計(jì)算等。導(dǎo)入自帶的 math 模塊之后,里面又包含絕對值、階乘、開平方等一些常用的數(shù)學(xué)函數(shù)。不過,這些函數(shù)仍然相對基礎(chǔ)。如果要完成更加復(fù)雜一些的數(shù)學(xué)計(jì)算,就會顯得捉襟見肘了。

numpy 為我們提供了更多的數(shù)學(xué)函數(shù),以幫助我們更好地完成一些數(shù)值計(jì)算。下面就依次來看一看。

2.1 三角函數(shù)

首先, 看一看 numpy 提供的三角函數(shù)功能。這些方法有:

numpy.sin(x)
numpy.cos(x)
numpy.tan(x)
numpy.arcsin(x)
numpy.arccos(x)
numpy.arctan(x)
numpy.hypot(x1,x2)
numpy.degrees(x)
numpy.radians(x)
numpy.deg2rad(x)
numpy.rad2deg(x)

比如,我們可以用上面提到的 numpy.rad2deg(x) 將弧度轉(zhuǎn)換為度。

示例代碼:

import numpy as np

np.rad2deg(np.pi)

2.2 雙曲函數(shù)

在數(shù)學(xué)中,雙曲函數(shù)是一類與常見的三角函數(shù)類似的函數(shù)。雙曲函數(shù)經(jīng)常出現(xiàn)于某些重要的線性微分方程的解中,使用 numpy 計(jì)算它們的方法為:

numpy.sinh(x)
numpy.cosh(x)
numpy.tanh(x)
numpy.arcsinh(x)
numpy.arccosh(x)
numpy.arctanh(x)

2.3 數(shù)值修約

數(shù)值修約, 又稱數(shù)字修約, 是指在進(jìn)行具體的數(shù)字運(yùn)算前, 按照一定的規(guī)則確定一致的位數(shù), 然后舍去某些數(shù)字后面多余的尾數(shù)的過程[via. 維基百科]。比如, 我們常聽到的「4 舍 5 入」就屬于數(shù)值修約中的一種。

numpy.around(a)
numpy.round_(a)
numpy.rint(x)
numpy.fix(x, y)
numpy.floor(x)
numpy.ceil(x)
numpy.trunc(x)

隨機(jī)選擇幾個(gè)浮點(diǎn)數(shù),看一看上面方法的區(qū)別。

2.4 求和、求積、差分

下面這些方法用于數(shù)組內(nèi)元素或數(shù)組間進(jìn)行求和、求積以及進(jìn)行差分。

numpy.prod(a, axis, dtype, keepdims)
numpy.sum(a, axis, dtype, keepdims)
numpy.nanprod(a, axis, dtype, keepdims)
numpy.nansum(a, axis, dtype, keepdims)
numpy.cumprod(a, axis, dtype)
numpy.cumsum(a, axis, dtype)
numpy.nancumprod(a, axis, dtype)
numpy.nancumsum(a, axis, dtype)
numpy.diff(a, n, axis)
numpy.ediff1d(ary, to_end, to_begin)
numpy.gradient(f)
numpy.cross(a, b, axisa, axisb, axisc, axis)
numpy.trapz(y, x, dx, axis)

2.5 指數(shù)和對數(shù)

如果你需要進(jìn)行指數(shù)或者對數(shù)求解,可以用到以下這些方法。

numpy.exp(x) :計(jì)算輸入數(shù)組中所有元素的指數(shù)。
numpy.expm1(x) :對數(shù)組中的所有元素計(jì)算 exp(x) - 1.
numpy.exp2(x) :對于輸入數(shù)組中的所有 p, 計(jì)算 2 ** p。
numpy.log(x) :計(jì)算自然對數(shù)。
numpy.log10(x) :計(jì)算常用對數(shù)。
numpy.log2(x) :計(jì)算二進(jìn)制對數(shù)。
numpy.log1p(x) : log(1 + x) 。
numpy.logaddexp(x1, x2) : log2(2**x1 + 2**x2) 。
numpy.logaddexp2(x1, x2) : log(exp(x1) + exp(x2)) 。

2.6 算術(shù)運(yùn)算

當(dāng)然,numpy 也提供了一些用于算術(shù)運(yùn)算的方法,使用起來會比 python 提供的運(yùn)算符靈活一些,主要是可以直接針對數(shù)組。

numpy.add(x1, x2)
numpy.reciprocal(x)
numpy.negative(x)
numpy.multiply(x1, x2)
numpy.divide(x1, x2)
numpy.power(x1, x2)
numpy.subtract(x1, x2)
numpy.fmod(x1, x2)
numpy.mod(x1, x2)
numpy.modf(x1)
numpy.remainder(x1, x2)

2.7 矩陣和向量積

求解向量、矩陣、張量的點(diǎn)積等同樣是 numpy 非常強(qiáng)大的地方。

numpy.dot(a,b)
numpy.vdot(a,b)
numpy.inner(a,b)
numpy.outer(a,b)
numpy.matmul(a,b)
numpy.tensordot(a,b)
numpy.kron(a,b)

2.8 其他

除了上面這些歸好類別的方法,numpy 中還有一些用于數(shù)學(xué)運(yùn)算的方法,歸納如下:

numpy.angle(z, deg)
numpy.real(val)
numpy.imag(val)
numpy.conj(x)
numpy.convolve(a, v, mode)
numpy.sqrt(x)
numpy.cbrt(x)
numpy.square(x)
numpy.absolute(x)
numpy.fabs(x)
numpy.sign(x)
numpy.maximum(x1, x2)
numpy.minimum(x1, x2)
numpy.nan_to_num(x)
numpy.interp(x, xp, fp, left, right, period)

三、代數(shù)運(yùn)算

上面,我們分為 8 個(gè)類別,介紹了 numpy 中常用到的數(shù)學(xué)函數(shù)。這些方法讓復(fù)雜的計(jì)算過程表達(dá)更為簡單。除此之外,numpy 中還包含一些代數(shù)運(yùn)算的方法,尤其是涉及到矩陣的計(jì)算方法,求解特征值、特征向量、逆矩陣等,非常方便。

numpy.linalg.cholesky(a)
numpy.linalg.qr(a ,mode)
numpy.linalg.svd(a ,full_matrices,compute_uv)
numpy.linalg.eig(a)
numpy.linalg.eigh(a, UPLO)
numpy.linalg.eigvals(a)
numpy.linalg.eigvalsh(a, UPLO)
numpy.linalg.norm(x ,ord,axis,keepdims)
numpy.linalg.cond(x ,p)
numpy.linalg.det(a)
numpy.linalg.matrix_rank(M ,tol)
numpy.linalg.slogdet(a)
numpy.trace(a ,offset,axis1,axis2,dtype,out)
numpy.linalg.solve(a,b)
numpy.linalg.tensorsolve(a,b ,axes)
numpy.linalg.lstsq(a,b ,rcond)
numpy.linalg.inv(a)
numpy.linalg.pinv(a ,rcond)
numpy.linalg.tensorinv(a ,ind)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中使用攝像頭實(shí)現(xiàn)簡單的延時(shí)攝影技術(shù)

    Python中使用攝像頭實(shí)現(xiàn)簡單的延時(shí)攝影技術(shù)

    這篇文章主要介紹了Python中使用攝像頭實(shí)現(xiàn)簡單的延時(shí)攝影技術(shù),本文只是一個(gè)簡單的小示例,講解了實(shí)現(xiàn)過程并給出實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-03-03
  • Python全景系列之控制流程盤點(diǎn)及進(jìn)階技巧

    Python全景系列之控制流程盤點(diǎn)及進(jìn)階技巧

    這篇文章主要為大家介紹了Python全景系列之控制流程盤點(diǎn)及進(jìn)階技巧詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • Python函數(shù)生成器原理及使用詳解

    Python函數(shù)生成器原理及使用詳解

    這篇文章主要介紹了Python函數(shù)生成器原理及使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 解決python中的print函數(shù)自動換行的問題

    解決python中的print函數(shù)自動換行的問題

    這篇文章主要介紹了解決python中的print函數(shù)自動換行的問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python?異之如何同時(shí)運(yùn)行多個(gè)協(xié)程詳解

    Python?異之如何同時(shí)運(yùn)行多個(gè)協(xié)程詳解

    這篇文章主要為大家介紹了Python?異之如何同時(shí)運(yùn)行多個(gè)協(xié)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • python使用pygame框架實(shí)現(xiàn)推箱子游戲

    python使用pygame框架實(shí)現(xiàn)推箱子游戲

    這篇文章主要為大家詳細(xì)介紹了python使用pygame框架實(shí)現(xiàn)推箱子游戲,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Python表示當(dāng)前時(shí)間的方法合集

    Python表示當(dāng)前時(shí)間的方法合集

    在 Python 中獲取當(dāng)前時(shí)間是許多與時(shí)間有關(guān)的操作的一個(gè)很好的起點(diǎn)。一個(gè)非常重要的用例是創(chuàng)建時(shí)間戳。在本教程中,你將學(xué)習(xí)如何用 datetime 模塊獲取、顯示和格式化當(dāng)前時(shí)間
    2023-01-01
  • pandas的resample重采樣的使用

    pandas的resample重采樣的使用

    這篇文章主要介紹了pandas的resample重采樣的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 詳解Pandas如何高效對比處理DataFrame的兩列數(shù)據(jù)

    詳解Pandas如何高效對比處理DataFrame的兩列數(shù)據(jù)

    我們在用?pandas?處理數(shù)據(jù)的時(shí)候,經(jīng)常會遇到用其中一列數(shù)據(jù)替換另一列數(shù)據(jù)的場景。這一類的需求估計(jì)很多人都遇到,當(dāng)然還有其它更復(fù)雜的。解決這類需求的辦法有很多,這里我們來推薦幾個(gè)
    2022-09-09
  • Python解決N階臺階走法問題的方法分析

    Python解決N階臺階走法問題的方法分析

    這篇文章主要介紹了Python解決N階臺階走法問題的方法,簡單描述了走臺階問題,并結(jié)合實(shí)例形式分析了Python使用遞歸與遞推算法解決走臺階問題的相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12

最新評論