python量化分析相關模組

來源:互聯網
上載者:User

標籤:copy   磁碟   rand   style   array   code   跨國公司   nbsp   之間   

Numpy

NumPy是高效能科學計算和資料分析的基礎包。它是pandas等其他各種工具的基礎。

NumPy的主要功能:

  ndarray,一個多維陣列結構,高效且節省空間的
  無需迴圈對整組資料進行快速運算的數學函數
  讀寫磁碟資料的工具以及用於操作記憶體對應檔的工具
  線性代數、隨機數產生和傅裡葉變換功能
  用於整合C、C++等代碼的工具

安裝方法:pip install numpy
引用方式:import numpy as np



建立ndarray:np.array()
應用情境:
  例1:已知若干家跨國公司的市值(美元),將其換算為人民幣
  例2:已知購物車中每件商品的價格與商品件數,求總金額
ndarray還可以是多維陣列,但元素類型必須相同
常用屬性:
  

T        數組的轉置(對高維數組而言)dtype    數組元素的資料類型size     數組元素的個數ndim     數組的維數shape    數組的維度大小(以元組形式)

 

dtype:
  bool_, int(8,16,32,64), uint(8,16,32,64), float(16,32,64)
類型轉換:astype()
建立ndarray:

array()    將列錶轉換為數組,可選擇顯式指定dtype    >>> np.array([1, 2, 3])    array([1, 2, 3])arange()    range的numpy版,支援浮點數    >>> np.arange(3.0)    array([ 0.,  1.,  2.])linspace()    類似arange(),第三個參數為數組長度    >>> np.linspace(2.0, 3.0, num=5)    array([ 2.  ,  2.25,  2.5 ,  2.75,  3.  ])zeros()    根據指定形狀和dtype建立全0數組    >>> np.zeros((2, 1))    array([[ 0.],           [ 0.]])ones()    根據指定形狀和dtype建立全1數組    np.ones((2, 1))    array([[ 1.],           [ 1.]])empty()    根據指定形狀和dtype建立空數組(隨機值)    np.empty([2, 2], dtype=int)    array([[-1073741821, -1067949133],       [  496041986,    19249760]])                     #randomeye()    根據指定邊長和dtype建立單位矩陣    >>> np.eye(2, dtype=int)    array([[1, 0],           [0, 1]])reshape()    分解,合并    >>> a = np.array([[1,2,3], [4,5,6]])    >>> np.reshape(a, 6)    array([1, 2, 3, 4, 5, 6])    >>> np.reshape(a, (3,-1))           array([[1, 2],           [3, 4],           [5, 6]])

 

數組和標量之間的運算
  a+1a*31//a(整除) a**0.5
同樣大小數組之間的運算
  a+ba/ba**b
數組的索引

a[5]    a2[2][3]    a2[2,3]    # 第幾維數組的第幾個索引,跟上面的寫法得到結果一樣數組的切片a[5:8]    a[:3] = 1    # 切片的數組都賦值1a2[1:2, :4]    # 第二個數組,0到3的索引a2[:,:1]    # 所有數組,索引為0的值a2[:,1]    # 所有數組,索引為1的值與列表不同,數組切片時並不會自動複製,在切片數組上的修改會影響原數組。    b = a[:4]b[-1] = 250【解決方案:copy()】# 這樣b是一個新的記憶體位址b = a[:4].copy()b[-1] = 250

 

python量化分析相關模組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.