国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

PythonNumPy庫安裝使用筆記

來源:懂視網 責編:小采 時間:2020-11-27 14:41:26
文檔

PythonNumPy庫安裝使用筆記

PythonNumPy庫安裝使用筆記:1. NumPy安裝 使用pip包管理工具進行安裝 代碼如下: $ sudo pip install numpy 使用pip包管理工具安裝ipython(交互式shell工具) 代碼如下: $ sudo pip instlal ipython $ ipython --pylab #pylab模式下, 會自動導入Sci
推薦度:
導讀PythonNumPy庫安裝使用筆記:1. NumPy安裝 使用pip包管理工具進行安裝 代碼如下: $ sudo pip install numpy 使用pip包管理工具安裝ipython(交互式shell工具) 代碼如下: $ sudo pip instlal ipython $ ipython --pylab #pylab模式下, 會自動導入Sci

1. NumPy安裝
使用pip包管理工具進行安裝

代碼如下:


$ sudo pip install numpy


使用pip包管理工具安裝ipython(交互式shell工具)

代碼如下:


$ sudo pip instlal ipython
$ ipython --pylab #pylab模式下, 會自動導入SciPy, NumPy, Matplotlib模塊


2. NumPy基礎

2.1. NumPy數組對象

具體解釋可以看每一行代碼后的解釋和輸出

代碼如下:


In [1]: a = arange(5) # 創建數據
In [2]: a.dtype
Out[2]: dtype('int64') # 創建數組的數據類型
In [3]: a.shape # 數組的維度, 輸出為tuple
Out[3]: (5,)
In [6]: m = array([[1, 2], [3, 4]]) # array將list轉換為NumPy數組對象
In [7]: m # 創建多維數組
Out[7]:
array([[1, 2],
[3, 4]])
In [10]: m.shape # 維度為2 * 2
Out[10]: (2, 2)
In [14]: m[0, 0] # 訪問多維數組中特定位置的元素, 下標從0開始
Out[14]: 1
In [15]: m[0, 1]
Out[15]: 2

2.2. 數組的索引和切片

代碼如下:


In [16]: a[2: 4] # 切片操作類似與Python中list的切片操作
Out[16]: array([2, 3])
In [18]: a[2 : 5: 2] # 切片步長為2
Out[18]: array([2, 4])
In [19]: a[ : : -1] # 翻轉數組
Out[19]: array([4, 3, 2, 1, 0])
In [20]: b = arange(24).reshape(2, 3, 4) # 修改數組的維度
In [21]: b.shape
Out[21]: (2, 3, 4)
In [22]: b # 打印數組
Out[22]:
array([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]],
[[12, 13, 14, 15],
[16, 17, 18, 19],
[20, 21, 22, 23]]])
In [23]: b[1, 2, 3] # 選取特定元素
Out[23]: 23
In [24]: b[ : , 0, 0] # 忽略某個下標可以用冒號代替
Out[24]: array([ 0, 12])
In [23]: b[1, 2, 3]
Out[23]: 23
In [24]: b[ : , 0, 0] # 忽略多個下標可以使用省略號代替
Out[24]: array([ 0, 12])
In [26]: b.ravel() # 數組的展平操作
Out[26]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23])
In [27]: b.flatten() # 與revel功能相同, 這個函數會請求分配內存來保存結果
Out[27]:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23])
In [30]: b.shape = (6, 4) # 可以直接對shape屬性賦值元組來設置維度
In [31]: b
Out[31]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15],
[16, 17, 18, 19],
[20, 21, 22, 23]])
In [30]: b.shape = (6, 4) # 矩陣的轉置
In [31]: b
Out[31]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15],
[16, 17, 18, 19],
[20, 21, 22, 23]])

2.3. 組合數組

代碼如下:


In [1]: a = arange(9).reshape(3, 3) # 生成數組對象并改變維度
In [2]: a
Out[2]:
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
In [3]: b = a * 2 # 對a數組對象所有元素乘2
In [4]: b
Out[4]:
array([[ 0, 2, 4],
[ 6, 8, 10],
[12, 14, 16]])
#######################
In [5]: hstack((a, b)) # 水平組合數組a和數組b
Out[5]:
array([[ 0, 1, 2, 0, 2, 4],
[ 3, 4, 5, 6, 8, 10],
[ 6, 7, 8, 12, 14, 16]])

In [6]: vstack((a, b)) # 垂直組合數組a和數組b
Out[6]:
array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[ 0, 2, 4],
[ 6, 8, 10],
[12, 14, 16]])
In [7]: dstack((a, b)) # 深度組合數組, 沿z軸方向層疊組合數組
Out[7]:
array([[[ 0, 0],
[ 1, 2],
[ 2, 4]],
[[ 3, 6],
[ 4, 8],
[ 5, 10]],
[[ 6, 12],
[ 7, 14],
[ 8, 16]]])

2.4. 分割數組

代碼如下:


In [8]: a
Out[8]:
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
In [9]: hsplit(a, 3) # 將數組沿水平方向分割成三個相同大小的子數組
Out[9]:
[array([[0],
[3],
[6]]),
array([[1],
[4],
[7]]),
array([[2],
[5],
[8]])]
In [10]: vsplit(a, 3) # 將數組沿垂直方向分割成三個子數組
Out[10]: [array([[0, 1, 2]]), array([[3, 4, 5]]), array([[6, 7, 8]])]

2.5. 數組的屬性

代碼如下:


In [12]: a.ndim # 給出數組的尾數或數組的軸數
Out[12]: 2
In [13]: a.size # 數組中元素的個數
Out[13]: 9
In [14]: a.itemsize # 數組中元素在內存中所占字節數(int64)
Out[14]: 8
In [15]: a.nbytes # 數組所占總字節數, size * itemsize
Out[15]: 72
In [18]: a.T # 和transpose函數一樣, 求數組的轉置
Out[18]:
array([[0, 3, 6],
[1, 4, 7],
[2, 5, 8]])

2.6. 數組的轉換

代碼如下:


In [19]: a.tolist() # 將NumPy數組轉換成python中的list
Out[19]: [[0, 1, 2], [3, 4, 5], [6, 7, 8]]

3. 常用函數

代碼如下:


In [22]: c = eye(2) # 構建2維單位矩陣
In [23]: c
Out[23]:
array([[ 1., 0.],
[ 0., 1.]])
In [25]: savetxt("eye.txt", c) # 將矩陣保存到文件中
In [5]: c, v = loadtxt("test.csv", delimiter=",", usecols=(0, 1), unpack=True) # 分隔符為, usecols為元組表示要獲取的字段數據(每一行的第零段和第一段), unpack為True表示拆分存儲不同列的數據, 分別存入c, v
In [12]: c
Out[12]: array([ 1., 4., 7.])
In [13]: mean(c) # 計算矩陣c的mean均值
Out[13]: 4.0
In [14]: np.max(c) # 求數組中的最大值
Out[14]: 7.0
In [15]: np.min(c) # 求數組中的最小值
Out[15]: 1.0
In [16]: np.ptp(c) # 返回數組最大值和最小值之間的差值
Out[16]: 6.0
In [18]: numpy.median(c) # 找到數組中的中位數(中間兩個數的平均值)
Out[18]: 4.0
In [19]: numpy.var(c) # 計算數組的方差
Out[19]: 6.0
In [20]: numpy.diff(c) # 返回相鄰數組元素的差值構成的數組
Out[20]: array([ 3., 3.])
In [21]: numpy.std(c) # 計算數組的標準差
Out[21]: 2.4494897427831779
In [22]: numpy.where(c > 3) # 返回滿足條件的數組元素的下標組成的數組
Out[22]: (array([1, 2]),)

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

PythonNumPy庫安裝使用筆記

PythonNumPy庫安裝使用筆記:1. NumPy安裝 使用pip包管理工具進行安裝 代碼如下: $ sudo pip install numpy 使用pip包管理工具安裝ipython(交互式shell工具) 代碼如下: $ sudo pip instlal ipython $ ipython --pylab #pylab模式下, 會自動導入Sci
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 欧美日韩精品一区二区三区视频在线 | 欧美 日韩 亚洲另类专区 | 欧美在线一二三区 | 精品一区二区三区四区五区 | 热久久91| 亚洲色图国产精品 | 国产一级自拍 | 成人看的一级毛片 | 日韩高清一区二区三区不卡 | 欧美精品在线看 | 精品伊人久久久久7777人 | 在线观看国产一区 | 手机看片91精品一区 | 国产未成女年一区二区 | 亚洲国产日韩欧美一区二区三区 | 国产在线视频专区 | 成人欧美一区二区三区在线 | 欧美综合亚洲 | 国产淫语打电话对白在线播放 | 国产精品免费 | 欧美日韩网站 | 国产资源在线看 | 91精品国产色综合久久 | 国产亚洲欧美一区二区三区 | 一区二区三区免费在线观看 | 在线亚洲精品 | 另类专区另类专区亚洲 | 日韩欧美视频二区 | 中文字幕第13亚洲另类 | 国产日韩一区二区三区在线播放 | 毛片1级 | 国内免费视频成人精品 | 国产一区在线播放 | 一区二区三区在线视频播放 | 国产成人免费在线 | 欧美日本国产 | 国产成人一区二区三区高清 | 成人国产一区二区三区精品 | 日韩a无v码在线播放免费 | 亚洲欧美日韩天堂 | 欧美三页 |