Numpy基礎(chǔ)(1)

- 安裝复颈,

pip install numpy

- 導(dǎo)入

import numpy as np

- 創(chuàng)建數(shù)組

arr = np.array([1,2,3,4,5])
arr
out:array([1, 2, 3, 4, 5])

  • 創(chuàng)建一個三維的空數(shù)組绩聘,里面的數(shù)據(jù)時內(nèi)存中殘留的內(nèi)容
np.empty((2,3,2))

array([[[1.59187215e-312, 0.00000000e+000],
        [1.41537862e+161, 5.22182633e+180],
        [7.33952596e+223, 4.27255707e+180]],

       [[7.04850274e-120, 4.90900659e+252],
        [3.88621453e+285, 2.91237123e+257],
        [4.71294503e+257, 2.59818825e-306]]])
  • 創(chuàng)建從0-20公差為2的一維數(shù)組
np.arange(0,20,2)

array([ 0,  2,  4,  6,  8, 10, 12, 14, 16, 18])
  • 生成從0到2均分的五個數(shù)
np.linspace(0,2,5)
array([0. , 0.5, 1. , 1.5, 2. ])
  • 創(chuàng)建3*3的在0-1之間均勻分布的隨機數(shù)組
np.random.random((3,3))

array([[0.29680299, 0.19137578, 0.26913372],
         [0.23225081, 0.52695982, 0.82736975],
         [0.13357885, 0.6480721 , 0.29805271]])
  • 創(chuàng)建3*3的、均值為0耗啦,方差為1的正態(tài)分布隨機數(shù)

np.random.normal(0,1,(3,3))

array([[ 0.71021081, -0.68369742, -0.4169674 ],
         [ 0.04374575,  0.42580965, -2.02402947],
         [ 0.31068114, -0.79955925, -0.36962168]])
  • 0-10隨機數(shù),3*3
np.random.randint(1,10,(3,3))

array([[8, 9, 8],
       [6, 2, 9],
       [5, 1, 2]])
  • 單位矩陣
np.eye(3)

array([[1., 0., 0.],
      [0., 1., 0.],
      [0., 0., 1.]])
  • 數(shù)據(jù)類型轉(zhuǎn)換 變量.astype(np.數(shù)據(jù)類型)凿菩,會返回一個原始數(shù)組的拷貝
arr = np.array([1,2,3,4,5])
arr.dtype
out:dtype('int32')

float_arr = arr.astype(np.float64)
float_arr
out:array([1., 2., 3., 4., 5.])
  • 小數(shù)轉(zhuǎn)換為整數(shù)會直接截掉小數(shù)部分
arr = np.array([1.2,4.5,6.8])
arr
out:array([1.2, 4.5, 6.8])

arr.astype(np.int32)
out:array([1, 4, 6])
  • 字符串不能直接轉(zhuǎn)換為整數(shù)
arr=np.array(['1.2'])
#先轉(zhuǎn)換為float型再轉(zhuǎn)換為整數(shù)
arr.astype(np.float).astype(np.int32)
out:array([1])
  • 創(chuàng)建一個包含10個隨機數(shù)的3*4的矩陣
x=np.random.randint(10,size=(3,4))
x
out:array([[5, 0, 3, 3],
           [7, 9, 3, 5],
           [2, 4, 7, 6]])
  • 數(shù)組的選取:選取后是原數(shù)組的視圖而不是拷貝帜讲,省內(nèi)存
    數(shù)組的索引
#一維數(shù)組
x=np.array([1,2,3,4,5,6])
x
out:array([1, 2, 3, 4, 5, 6])
x[0]---->1
x[-1]---->6
#二維數(shù)組一樣
x=np.random.randint(10,size=(3,4))
x
out:
array([[8, 8, 1, 6],
       [7, 7, 8, 1],
       [5, 9, 8, 9]])
#x[行衅谷,列]
#第二行倒數(shù)第一列
x[2][-1]
out:9
  • 數(shù)組的切片
# x[start:stop:step] x[從哪開始,到哪結(jié)束似将,步長值]
#一維數(shù)組
x=np.arange(0,20,2)
x
out:array([ 0,  2,  4,  6,  8, 10, 12, 14, 16, 18])

#從第一個元素開始获黔,到最后一個元素結(jié)束但不包括最后一個元素,左閉右開
x[0:-1:2]
out:array([ 0,  4,  8, 12, 16])
x[:] #獲取所有值
out:array([ 0,  2,  4,  6,  8, 10, 12, 14, 16, 18])

#二維數(shù)組x[行:start:stop:step在验,列:start:stop:step]
x=np.random.randint(10,size=(3,4))
x
out:
array([[4, 3, 3, 2],
       [0, 4, 8, 9],
       [9, 5, 8, 8]])
# 選取數(shù)組的前兩行和前三列
x[:2,:3]
out:
array([[4, 3, 3],
       [0, 4, 8]])
#選取第一行
x[0,:]
out:array([4, 3, 3, 2])
#第一列
x[:,0]
OUT:
array([4, 0, 9])

# 旋轉(zhuǎn)一百八十多度
x[::-1,::-1]
OUT:
array([[8, 8, 5, 9],
       [9, 8, 4, 0],
       [2, 3, 3, 4]])

# 調(diào)用copy()方法創(chuàng)建副本
x_cp=x.copy()
x_cp
out:
array([[4, 3, 3, 2],
       [0, 4, 8, 9],
       [9, 5, 8, 8]])
  • 變換數(shù)組 : reshape()方法
arr = np.arange(1,10)
arr
out:array([1, 2, 3, 4, 5, 6, 7, 8, 9])
arr.reshape((3,3))
out:array([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])

# 數(shù)組拼接
m=np.array([1,2,3])
n=np.array([3,2,1])
np.concatenate([m,n])
out:
array([1, 2, 3, 3, 2, 1])

#按軸axis拼接玷氏,默認axis=0,得到下面的結(jié)果,屬于垂直拼接
grid = np.arange(1,7).reshape(2,3)
grid
out:
array([[1, 2, 3],
       [4, 5, 6]])
np.concatenate([grid,grid])
out:
array([[1, 2, 3],
       [4, 5, 6],
       [1, 2, 3],
       [4, 5, 6]])

#axis=1時水平拼接
np.concatenate([grid,grid],axis=1)
out:
array([[1, 2, 3, 1, 2, 3],
       [4, 5, 6, 4, 5, 6]])

# 垂直棧拼接 vstack()
np.vstack([grid,grid])
out:
array([[1, 2, 3],
       [4, 5, 6],
       [1, 2, 3],
       [4, 5, 6]])
# 水平棧拼接 : hstack()
np.hstack([grid,grid])
out:
array([[1, 2, 3, 1, 2, 3],
       [4, 5, 6, 4, 5, 6]])
  • 數(shù)組的分割
x=np.random.randint(12,size=(12,))
x
out:array([11,  2,  9, 11,  7,  2,  7,  5,  8,  0, 10,  5])
y1,y2,y3=np.split(x,[4,8])
print(y1,y2,y3)
OUT:
[11  2  9 11]   [7 2 7 5]   [ 8  0 10  5]

# 垂直棧和水平棧分割

x=np.random.randint(16,size=(4,4))
x
out:
array([[ 7, 10, 10, 5],
[ 9, 1, 2, 4],
[15, 14, 13, 12],
[11, 0, 12, 0]])
a_up,a_dn=np.vsplit(x,[2])
a_up
out:
array([[ 7, 10, 10, 5],
[ 9, 1, 2, 4]])
a_dn
out:
array([[15, 14, 13, 12],
[11, 0, 12, 0]])

水平棧分割

a_l,a_r=np.hsplit(x,[2])
a_l
out:
array([[ 7, 10],
[ 9, 1],
[15, 14],
[11, 0]])
a_r
out:array([[10, 5],
[ 2, 4],
[13, 12],
[12, 0]])

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末译红,一起剝皮案震驚了整個濱河市预茄,隨后出現(xiàn)的幾起案子兴溜,更是在濱河造成了極大的恐慌侦厚,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拙徽,死亡現(xiàn)場離奇詭異刨沦,居然都是意外死亡,警方通過查閱死者的電腦和手機膘怕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進店門想诅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事来破±鹤疲” “怎么了?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵徘禁,是天一觀的道長诅诱。 經(jīng)常有香客問我,道長送朱,這世上最難降的妖魔是什么娘荡? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮驶沼,結(jié)果婚禮上炮沐,老公的妹妹穿的比我還像新娘。我一直安慰自己回怜,他們只是感情好大年,可當(dāng)我...
    茶點故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著玉雾,像睡著了一般鲜戒。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上抹凳,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天遏餐,我揣著相機與錄音,去河邊找鬼赢底。 笑死失都,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的幸冻。 我是一名探鬼主播粹庞,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼洽损!你這毒婦竟也來了庞溜?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤碑定,失蹤者是張志新(化名)和其女友劉穎流码,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年沈跨,在試婚紗的時候發(fā)現(xiàn)自己被綠了备徐。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,127評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡夺欲,死狀恐怖瘸爽,靈堂內(nèi)的尸體忽然破棺而出域那,到底是詐尸還是另有隱情播掷,我是刑警寧澤审编,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站歧匈,受9級特大地震影響割笙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜眯亦,卻給世界環(huán)境...
    茶點故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一伤溉、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧妻率,春花似錦乱顾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至孤里,卻和暖如春伏伯,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背捌袜。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工说搅, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人虏等。 一個月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓弄唧,卻偏偏與公主長得像,于是被迫代替她去往敵國和親霍衫。 傳聞我的和親對象是個殘疾皇子候引,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,066評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 基礎(chǔ)篇NumPy的主要對象是同種元素的多維數(shù)組。這是一個所有的元素都是一種類型敦跌、通過一個正整數(shù)元組索引的元素表格(...
    oyan99閱讀 5,130評論 0 18
  • Numpy是Python的第第三方模塊澄干,用于科學(xué)計算。 1.屬性 列表轉(zhuǎn)化為數(shù)組: 2. array的創(chuàng)建 指定數(shù)...
    井底蛙蛙呱呱呱閱讀 3,376評論 0 10
  • 換工作之后柠傍,PYTHON就放下啦麸俘,基本沒接觸了,也都忘記的差不多了携兵,現(xiàn)在重新?lián)炱饋?1.1 NumPy Array...
    wqh8384閱讀 573評論 0 1
  • 一.NumPy的引入 標(biāo)準(zhǔn)安裝的Python中用列表(list)保存一組值疾掰,可以用來當(dāng)作數(shù)組使用,不過由于列...
    wlj1107閱讀 1,019評論 0 2
  • Numpy的組成與功能 Numpy(Numeric Python)可以被理解為一個用python實現(xiàn)的科學(xué)計算包,...
    不做大哥好多年閱讀 4,286評論 0 10