學員筆記||Python數據分析之:numpy入門(一)

2021-02-21 七月在線實驗室

 (點擊上方公眾號,快速關注一起學AI)

這是我學<Python數據分析>時整理出來的numpy基礎速讀筆記,內容大致分為:Numpy簡介,ndarray對象的構建,以及對ndarray屬性的理解。歡迎找茬&可勁拍磚!

numpy最主要的是支持矩陣操作與運算

非常高效是numpy的優勢,core為C編寫。提升了python的處理效率

numpy是一些與比較流行的機器學習框架的基礎。

 

名詞解釋:ndarray是numpy的核心數據類型,即(n-dimensional array)多維數組

,tensorflow中的tensor(張量),它本質上也多維數組,但這個名字很高大上。因此,理解多維數組對之後的機器學習會有很大幫助。

導入

import numpy as np

使用幫助

dir(np)

從Python數組構建


l1=[1,2,3,4,5]

print (type(l1))

l2=np.array(l1)

print (type(l2))

l3=list(l2) # ndarray轉為Python list

print (type(l3))


構建一維數組


n1=np.array([1,2,3])

n1.shape


構建二維數組


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

n2.shape


快速構建ndarray

序列創建:


np.arange(15)#類似於python中的range,創建一個第一個維度為15的ndarray對象。

np.arange(2,3,0.1)   #起點,終點,步長值。含起點值,不含終點值。

np.linspace(1,10,10) #起點,終點,區間內點數。起點終點均包括在內。

np.arange(0,1,0.1) #0到1之間步長為0.1的數組, 數組中不包含1  

np.linspace(0, 1, 5) # 開始:0, 結束1, 元素數 5。

 

填充創建:


np.zeros((2,3)) #創建一個全零的,2x3的矩陣, 注意:傳入參數是一個tuple,因此別忘了()

np.ones((2,3)) #創建一個全為1的,2x3的矩陣

 

np.identity(5) #方陣identity(),只需要一個參數,建立n*n的方陣

a = np.random.rand(5,5)#指定數字矩陣fill()函數

a.fill(7)

a

np.empty((6,6))#空的ndarray,指定其shape即可,注意:空不意味著值為0,而是任何的value,內存中沒有被初始化的。

np.eye(3)# 對角線矩陣

np.random.rand(3,2) #隨機數矩陣:

 

關於隨機數方法:

rand:返回均勻分布隨機數

randn:返回服從正態分布的隨機數 

numpy數據類型及轉換


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

print(d1)

pint(d1.dtype) # Numpy會自動根據ndarray對象中的值判定數據類型,這裡為整型。

d1.astype(np.float32)# 如果想把它強制轉為浮點型,可以用astype函數轉換。

np.random.rand((3,2),dtype=np.float32)# 也可以在創建ndarray時,即指定其數據類型

#numpy數據類型參考


類型

類型代碼

說明

int8、uint8

i1、u1

有符號和無符號8位整型(1位元組)

int16、uint16

i2、u2

有符號和無符號16位整型(2位元組)

int32、uint32

i4、u4

有符號和無符號32位整型(4位元組)

int64、uint64

i8、u8

有符號和無符號64位整型(8位元組)

float16

f2

半精度浮點數

float32

f4、f

單精度浮點數

float64

f8、d

雙精度浮點數

float128

f16、g

擴展精度浮點數

complex64

c8

分別用兩個32位表示的複數

complex128

c16

分別用兩個64位表示的複數

complex256

c32

分別用兩個128位表示的複數

bool

?

布爾型

object

O

python對象

string

Sn

固定長度字符串,每個字符1位元組,如S10

unicode

Un

固定長度Unicode,字節數由系統決定,如U10

ndarray.ndim

查看ndarray的dimension維度數。

n1=np.identity(5)

n1.ndim


ndarray.shape


查看ndarray的shape形狀,返回值 是一個tuple,當維數為2維時,返回的是行數、列數、……數組的各個維(注意和維和維數要區分開)。它是一個數組各個維的長度構成的整數元組。對n行m列矩陣而言,shape將是(n,m)。因此,shape元組的長度也就是rank,也是維數ndim。

ndarray.dtype

查看ndarray對象的數據類型


ndarray.size


查看ndarray對象中元素的數量

 

———未完待續———

小七透露下:下篇筆記是關於ndarray的訪問與設置噠。歡迎同學們投稿/提建議。

投稿請聯繫微信號:julyedukefu(稿件一經採用,你將收穫高額稿酬&專屬學習大禮包)

相關焦點

  • 學員筆記|Python數據分析之numpy入門(三)
    本篇筆記中,我將記錄ndarray最重要的功能,運算。筆記來源視頻:http://www.julyedu.com/video/play/65/599 首先,我們創建兩個矩陣x與yimport numpy as npx=np.array([[1,2],[3,4]],dtype=np.float64)y=np.array([[5,6],[7,8]],dtype=np.float64
  • python數據分析:numpy入門
    微信公眾號:學點啥玩點啥小白友好型python數據分析:numpy入門numpy:一個在python中做科學計算的基礎庫,重在數值計算,也是大部分python科學計算庫的基礎庫,多用於在大型、多維數組上執行數值計算。
  • 數據系列教程之numpy( 三)
    數據分析系列教程之numpy( 一)數據分析系列教程之numpy(二)上周講了數據分析入門的前兩節,numpy
  • python數據分析專題 (9):numpy基礎
    NumPy(Numerical Python的簡稱)是高性能科學計算和數據分析的基礎包。NumPy最重要的一個特點就是其N維數組對象(即ndarray),該對象是一個快速而靈活的大數據集容器。新手可能不理解這句話的含義,這個需要慢慢去理解 。總之,知道numpy是python數據分析最重要的基礎包就可以了。
  • Python數據分析 - Numpy
    前言NUMPY(以下簡稱NP)是Python數據分析必不可少的第三方庫,np的出現一定程度上解決了Python運算性能不佳的問題,同時提供了更加精確的數據類型。如今,np被Python其它科學計算包作為基礎包,已成為Python 數據分析的基礎,可以說,NP是SciPy、Pandas等數據處理或科學計算庫最基本的函數功能庫。因此,理解np的數據類型對python數據分析十分有幫助。下面,本文將介紹Np的常用操作和基本數據類型。NP提供了以下重點功能。
  • Python之numpy數組學習(一)
    複數的實部和虛部分別使用real()函數和imag()函數提取。數據類型對象是numpy.dtype類的實例。數組是一種數據類型。數據類型對象表明了數據佔用的字節數,所佔用字節的具體數目一般存放在類dtype的itemsize中。
  • python數據分析專題 (7):python數據分析模塊
    也就是這些python的擴展包讓python可以做數據分析,主要包括numpy,scipy,pandas,matplotlib,scikit-learn等等諸多強大的模塊,在結合上ipython交互工具 ,以及python強大的爬蟲數據獲取能力,字符串處理能力,讓python成為完整的數據分析工具。
  • 從零開始學Python數據分析【4】-- numpy
    作者:劉順祥個人微信公眾號:每天進步一點點2015前文傳送門:從零開始學Python數據分析
  • Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python...
    22機器學習 23深度學習 24數據結構和算法 25python網絡爬蟲 26機器學習入門篇 27機器學習入門篇2 28機器學習提升篇 29數據挖掘篇 30深度學習必備原理與實戰 31深度學習必備原理與實戰2 32深度學習必備原理與實戰3
  • Python數據分析之numpy學習(一)
    在學完《廖雪峰Python2.7教程》感覺受益匪淺,掌握了基本的語法之後開始接觸用Python進行數據分析。這裡向大家推薦兩本書《Python數據分析》和《利用Python進行數據分析》,而這兩本書也是目前我正在學習的材料,雖然這兩本書都是基於Python2.x,但對於Python3.x也能正常運行。
  • 大數據分析Python NumPy庫使用教程
    我將在大數據分析Python NumPy庫使用教程中學到什麼? 大數據分析Python NumPy庫使用教程為數據工程師提供有關NumPy的從零開始的培訓。這意味著您不需要具有NumPy的任何經驗,也不會浪費任何時間學習與數據工程工作無關的東西。
  • python數據科學系列:numpy入門詳細教程
    python數據科學基礎庫主要是三劍客:numpy,pandas以及matplotlib,每個庫都集成了大量的方法接口,配合使用功能強大。numpy:numerical python縮寫,提供了底層基於C語言實現的數值計算庫,與python內置的list和array數據結構相比,其支持更加規範的數據類型和極其豐富的操作接口,速度也更快numpy的兩個重要對象是
  • 如何系統地學習Python 中 matplotlib, numpy, scipy, pandas?
    SciPy:基於 Numpy,匯集了一系列的數學算法和便捷的函數。它可以向開發者提供用於數據操作與可視化的高級命令和類,是構建交互式 Python 會話的強大工具。Pandas:面向數據操作和分析的 Python 庫,提供用於處理數字圖表和時序數據的數據結構和操作功能。
  • Python數據分析基礎之NumPy學習 (上)
    >Python 入門篇 (上)Python 入門篇 (下)數組計算之 NumPy (上)數組計算之 NumPy (下)科學計算之 SciPy數據結構之 Pandas基本可視化之 Matplotlib統計可視化之
  • 數據分析入門必讀經典《利用Python進行數據分析》pdf免費分享
    想入門數據分析,大家都會去網上搜一些經典書。到了Python這塊,除了廖雪峰老師的課程資源,《利用Python進行數據分析》這本書也堪稱經典。2017年作者出了第二版。主要介紹了python3個庫numpy(數組),pandas(數據分析)和matplotlib(繪圖)的學習。在github上有人看完了英文版並且還寫出了中文筆記版(精華版),特地來分享給大家。不過具體書籍大家找的時候還是會有一些麻煩。
  • Python 數據分析:Numpy 介紹
    如今,np被Python其它科學計算包作為基礎包,已成為Python 數據分析的基礎,可以說,NP是SciPy、Pandas等數據處理或科學計算庫最基本的函數功能庫。因此,理解np的數據類型對python數據分析十分有幫助。下面,本文將介紹Np的常用操作和基本數據類型。NP提供了以下重點功能。
  • Python入門教程(一):初識Numpy
    Numpy是Python中較為常用的模塊,今天我們就從Numpy的基礎應用講起,非常適合0基礎的小白哦,python系列的基礎課程也會持續更新。首先,我們在運用某個模塊之前需要先導入這個模塊。import numpynumpy.
  • python:numpy入門詳細教程
    python數據科學基礎庫主要是三劍客:numpy,pandas以及matplotlib,每個庫都集成了大量的方法接口,配合使用功能強大。numpy:numerical python縮寫,提供了底層基於C語言實現的數值計算庫,與python內置的list和array數據結構相比,其支持更加規範的數據類型和極其豐富的操作接口,速度也更快num
  • 小數點Python編程入門(數據分析)第十七期開始啦
    網上有很多python入門課程,POINT推出python課程又有什麼亮點呢?首先,最最重要的一點,老師靠譜!本次課程的老師飛柳是我多年好友,他也是我的python啟蒙老師。如果沒有他在python和數據分析方向的幫助,我也許不會走上專業數據分析師的道路。此次課程之所以這麼難產,主要就是在於請他出山很難,整整磨了將近半年。
  • 學習筆記,從NumPy到Scrapy,學習Python不能錯過這些庫
    在網絡上看到幾位前輩寫了關於python深度學習庫的文章,對於小小白來說,因為我剛開始學python,我得承認自己看完後依然覺得雲裡霧裡的,不知道這些庫到底對我有什麼用處。所以我到網絡上搜集補充關於這些庫的說明內容,感覺在這個整理資料的過程中,對於這些python程序庫了解了更多,以下是我整理的學習筆記。