Numpy入門(一):Numpy的安裝和創建


在數據分析和機器學習中,大量的使用科學計算,Numpy提供了大型矩陣計算的方式,而這些是python標准庫中所缺少的。Numpy也是許多優秀的第三方庫的基礎,依賴於Numpy的庫非常多,后續會慢慢的進行介紹。

Numpy的安裝

和許多的庫一樣,不管在windows平台下還是在linux平台下,安裝Numpy的命令如下:

pip install numpy

安裝完以后:

Collecting numpy
  Downloading numpy-1.14.0-cp27-none-win32.whl (9.8MB)
    100% |████████████████████████████████| 9.8MB 27kB/s
Installing collected packages: numpy
Successfully installed numpy-1.14.0

python解析器 下查看 Numpy 是否安裝成功:

import numpy

Numpy生成數組函數(Array creation )

直接使用array 函數生成數組:

>>> import numpy as np
>>> a = np.array([2,3,4])
>>> print a
[2 3 4]
>>> b = np.array([(1,3,4),(2,3,5)])
>>> print b
[[1 3 4]
 [2 3 5]]
>>>

array 函數中使用python自帶的list ,在多維數組中在list 中存放多個元祖。

使用 emptyzerosonesidentityeye 創建矩陣:

>>> import numpy as np
#使用empty創建2x2矩陣
>>> a = np.empty([2,2])
>>> print a
[[1.92432613e-295 1.92410215e-295]
 [1.92414694e-295 1.92414694e-295]]

identity 為返回一個N維單位方陣。

同樣的還有empty_likeones_likezeros_like 是復制對方的維數,進行相應的處理。

使用 arangelinspace 生成數組:

在0到2中按步長為0.3生成數組:

>>> np.arange( 0, 2, 0.3 )
array([0. , 0.3, 0.6, 0.9, 1.2, 1.5, 1.8])

在0到2中生成9個數:

>>> np.linspace( 0, 2, 9 )
array([0.  , 0.25, 0.5 , 0.75, 1.  , 1.25, 1.5 , 1.75, 2.  ])

Numpy中數組的基本屬性

在Numpy中生成的數組叫做ndarray , 在ndarray 中有如下的屬性:

  • ndarray.ndim: 數組維數

    程序如下:

      >>> a = np.zeros([3,4])
      >>> a.ndim
      2
      >>> b = np.zeros([3,4,5])
      >>> b.ndim
      3
      >>>
    
  • ndarray.shape:數組的結構 幾乘幾 數組

      >>> print a.shape
      (3, 4)
      >>> print b.shape
      (3, 4, 5)
      >>>
    
  • ndarray.size: 數組有幾個元素

      >>> print a.size
      12
      >>> print b.size
      60
      >>>
    

Numpy中數組的保存

使用tofilefromfile

import numpy as np

a = np.array([(1,2,3,4),(4,5,2,4)])

print a

a.tofile("filename.bin")

b = np.fromfile("filename.bin",dtype = np.int32)

print b.reshape(2,4)

還可以使用 np.save() np.load() np.savez() 這一組合進行數據的存儲。

import numpy as np

a = np.array([(1,2,3,4),(4,5,2,4)])

print a

np.save("a.npy", a)
c = np.load("a.npy")
print c

另外一組為 savetxt()loadtxt()

import numpy as np

a = np.array([(1,2,3,4),(4,5,2,4)])

print a
np.savetxt("a.txt", a)
np.loadtxt("a.txt")
c = np.load("a.npy")
print c

更多教程:阿貓學編程


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM