傅里叶变换表_Numpy库小抄表!主要语法和代码都在这里啦
用戶2769421 | 作者
騰訊云 云+社區 | 來源
Numpy是一個用python實現的科學計算的擴展程序庫,包括:
- 一個強大的N維數組對象Array;
- 比較成熟的(廣播)函數庫;
- 用于整合C/C++和Fortran代碼的工具包;
- 實用的線性代數、傅里葉變換和隨機數生成函數。numpy和稀疏矩陣運算包scipy配合使用更加方便。
NumPy(Numeric Python)提供了許多高級的數值編程工具,如:矩陣數據類型、矢量處理,以及精密的運算庫。專為進行嚴格的數字處理而產生。多為很多大型金融公司使用,以及核心的科學計算組織如:Lawrence Livermore,NASA用其處理一些本來使用C++,Fortran或Matlab等所做的任務。
本文整理了一個Numpy的小抄表,總結了Numpy的常用操作,可以收藏慢慢看。
(圖片可以點開大圖查看哦~)
一.安裝Numpy
可以通過 Pip 或者 Anaconda安裝Numpy:
$?pip install numpy或
$?conda install numpy二.基礎
NumPy最常用的功能之一就是NumPy數組:列表和NumPy數組的最主要區別在于功能性和速度。
列表提供基本操作,但NumPy添加了FTTs、卷積、快速搜索、基本統計、線性代數、直方圖等。
兩者數據科學最重要的區別是能夠用NumPy數組進行元素級計算。
- axis 0:通常執行
- axis 1:通常指列
1.占位符
舉例:
import numpy as np#?1 dimensionalx = np.array([1,2,3])#?2 dimensionaly = np.array([(1,2,3),(4,5,6)])x = np.arange(3)>>> array([0, 1, 2])y = np.arange(3.0)>>> array([ 0., 1., 2.])x = np.arange(3,7)>>> array([3, 4, 5, 6])y = np.arange(3,7,2)>>> array([3, 5])2.數組屬性
3.拷貝 /排序
舉例:
import?numpy?as?np# Sort sorts in ascending ordery = np.array([10,?9,?8,?7,?6,?5,?4,?3,?2,?1])y.sort()print(y)>>>?[?1??2??3??4??5??6??7??8??9??10]4.數組操作例程
增加或減少元素
舉例:
import numpy?as?np# Append?items?to?arraya?= np.array([(1,?2,?3),(4,?5,?6)])b?= np.append(a, [(7,?8,?9)])print(b)>>> [1?2?3?4?5?6?7?8?9]# Remove?index?2?from?previous?arrayprint(np.delete(b,?2))>>> [1?2?4?5?6?7?8?9]組合數組
舉例:
import?numpy?as?npa = np.array([1,?3,?5])b = np.array([2,?4,?6])# Stack two arrays row-wiseprint(np.vstack((a,b)))>>>?[[1?3?5]?????[2?4?6]]# Stack two arrays column-wiseprint(np.hstack((a,b)))>>>?[1?3?5?2?4?6]分割數組
舉例:
# Split array into groups of ~3a = np.array([1,?2,?3,?4,?5,?6,?7,?8])print(np.array_split(a,?3))>>> [array([1,?2,?3]),?array([4,?5,?6]),?array([7,?8])]數組形狀變化
- 操作
- 其他
舉例:
#?Find?inverse?of?a?given?matrix>>>?np.linalg.inv([[3,1],[2,4]])array([[ 0.4, -0.1],???????[-0.2, 0.3]])5.數學計算
操作
舉例:
#?If a 1d array is added to a 2d array (or the other way), NumPy#?chooses the array with smaller dimension and adds it to the one#?with bigger dimensiona = np.array([1, 2, 3])b = np.array([(1, 2, 3), (4, 5, 6)])print(np.add(a, b))>>> [[2 4 6]?????[5 7 9]]?????#?Example of np.roots#?Consider a polynomial?function?(x-1)^2 = x^2 - 2*x + 1#?Whose roots are 1,1>>> np.roots([1,-2,1])array([1., 1.])#?Similarly x^2 - 4 = 0 has roots as x=±2>>> np.roots([1,0,-4])array([-2., 2.])比較
舉例:
# Using comparison operators will create boolean NumPy arraysz = np.array([1,?2,?3,?4,?5,?6,?7,?8,?9,?10])c = z >> [?True??True??True??True??True?False?False?False?False?False]基本的統計
舉例:
#?Statistics of an arraya = np.array([1, 1, 2, 5, 8, 10, 11, 12])#?Standard deviationprint(np.std(a))>>> 4.2938910093294167#?Medianprint(np.median(a))>>> 6.5更多
6.切片和子集
舉例:
b = np.array([(1,?2,?3), (4,?5,?6)])# The index *before* the comma refers to *rows*,# the index *after* the comma refers to *columns*print(b[0:1,?2])>>>?[3]print(b[:len(b),?2])>>>?[3?6]print(b[0, :])>>>?[1?2?3]print(b[0,?2:])>>>?[3]print(b[:,?0])>>>?[1?4]c = np.array([(1,?2,?3), (4,?5,?6)])d = c[1:2,?0:2]print(d)>>>?[[4?5]]切片舉例:
import?numpy?as?npa1 = np.arange(0,?6)a2 = np.arange(10,?16)a3 = np.arange(20,?26)a4 = np.arange(30,?36)a5 = np.arange(40,?46)a6 = np.arange(50,?56)a = np.vstack((a1, a2, a3, a4, a5, a6))生成矩陣和切片圖示
7.小技巧
布爾索引
# Index trick when working with two np-arraysa?= np.array([1,2,3,6,1,4,1])b?= np.array([5,6,7,8,3,1,2])# Only saves a at index where b == 1other_a?= a[b ==?1]#Saves every spot in a except at index where b != 1other_other_a?= a[b !=?1]import?numpy?as?npx = np.array([4,6,8,1,2,6,9])y = x >?5print(x[y])>>>?[6?8?6?9]# Even shorterx = np.array([1,?2,?3,?4,?4,?35,?212,?5,?5,?6])print(x[x >>?[1?2?3?4?4]參考:
https://github.com/juliangaal/python-cheat-sheet
- END -
本文為轉載分享&推薦閱讀,若侵權請聯系后臺刪除
總結
以上是生活随笔為你收集整理的傅里叶变换表_Numpy库小抄表!主要语法和代码都在这里啦的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BigeMap 下载器使用教程
- 下一篇: 震惊!数码博主称将转行测飞机杯?看了眼日