日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python Numpy 笔记

發布時間:2024/4/14 python 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python Numpy 笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這次機器學習的作業可以用第三方庫了,果斷拋棄 MATLAB 改用 Python
但是操作數組的 Numpy 之前一直沒用過,今天先看看官方教程入個門

The Basics

Numpy 中主要的對象是同類元素組成的多維數組,可以通過一個正整數的元組進行索引。
在 Numpy 中維度(dimension)稱為軸(axes),軸的數量稱為秩rank

[[1., 0., 0.], [0., 1., 2.]] :rank=2
the first dimension has a length of 2, the second dimension has a length of 3

Numpy 的數組類叫做 ndarray or array
attributes:

  • ndarray.ndim
  • ndarray.shape
  • ndarray.size
  • ndarray.dtype:ndarray.dtype.name 返回字符串表示的類型名稱
  • ndarray.data
  • Example:

    >>> import numpy as np >>> a = np.arange(15).reshape(3, 5) >>> a array([[ 0, 1, 2, 3, 4],[ 5, 6, 7, 8, 9],[10, 11, 12, 13, 14]]) >>> a.shape (3, 5) >>> a.ndim 2 >>> a.dtype.name 'int64' >>> a.itemsize 8 >>> a.size 15 >>> type(a) <type 'numpy.ndarray'> >>> b = np.array([6, 7, 8]) >>> b array([6, 7, 8]) >>> type(b) <type 'numpy.ndarray'>

    Array Creation

  • create from list/tupe:

    • a = np.array([1, 2, 3])
    • b = np.array([[1, 2, 3], [4, 5, 6]], dtype=float)
  • create with shape:

    • zeros: np.zeros((3, 4))
    • ones: np.ones((2, 4, 3))
    • empty: np.empty((2, 3)) uninitialized
  • create sequences of number (similar to range()):

    • arange: np.arange(10, 30, 5) syntax is the same as range() but returns array

      接受浮點數,但是由于精度影響,輸出的元素個數不確定。這種情況應使用 linspace
    • linspace: np.linspace(0, 2, 9) return an array contains 9 numbers from 0 to 2
  • Basic Operations

  • 算數操作對于 array 是按元素運算的,并返回一個新的 array
  • >>> a = np.array( [20,30,40,50] ) >>> b = np.arange( 4 ) >>> b array([0, 1, 2, 3]) >>> c = a-b >>> c array([20, 29, 38, 47]) >>> b**2 array([0, 1, 4, 9]) >>> 10*np.sin(a) array([ 9.12945251, -9.88031624, 7.4511316 , -2.62374854]) >>> a<35 array([ True, True, False, False], dtype=bool) >>> A = np.array( [[1,1], ... [0,1]] ) >>> B = np.array( [[2,0], ... [3,4]] ) >>> A*B # elementwise product array([[2, 0],[0, 4]])# 兩種矩陣乘法 >>> A.dot(B) array([[5, 4],[3, 4]]) >>> np.dot(A, B) array([[5, 4],[3, 4]])
  • 一元運算 (sum, min, max)
  • >>> a = np.random.random((2,3)) >>> a array([[ 0.18626021, 0.34556073, 0.39676747],[ 0.53881673, 0.41919451, 0.6852195 ]]) >>> a.sum() 2.5718191614547998 >>> a.min() 0.1862602113776709 >>> a.max() 0.6852195003967595 >>> b = np.arange(12).reshape(3,4) >>> b array([[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11]]) >>> >>> b.sum(axis=0) # sum of each column array([12, 15, 18, 21]) >>> >>> b.min(axis=1) # min of each row array([0, 4, 8])

    Indexing, slicing and iterating

    超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

    總結

    以上是生活随笔為你收集整理的Python Numpy 笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。