中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
入門numpy(50﹪-65﹪)【解讀numpy官方文檔】

作者:王大偉

博客專欄:https://www.hellobi.com/u/wangdawei/articles

Python愛好者社區(qū)  唯一小編 

前言

這幾天很忙啊,所以也沒時間靜下心來寫文章,現(xiàn)在好點了,我們繼續(xù)numpy官網(wǎng)之旅

import numpy as np

形狀操作

改變數(shù)組的形狀

a = np.floor(10*np.random.random((3,4)))
a


a.resize((2,6))
a


注:改變a數(shù)組形狀


如果在改變形狀操作中將尺寸給定為-1,則會自動計算其尺寸:

a.reshape(3,-1)


查看這部分更多更詳細的用法可以看:https://docs.scipy.org/doc/numpy-dev/user/quickstart.html

下圖部分:



堆疊不同的數(shù)組

幾個數(shù)組可以沿不同的軸堆疊在一起:

a = np.floor(10*np.random.random((2,2)))
a


b = np.floor(10*np.random.random((2,2)))
b


np.vstack((a,b))


注:這里v是vertical的縮寫,意思是垂直方向,所以這里是按照豎直方向堆疊數(shù)組

np.hstack((a,b))


注:這里的h是horizontal的縮寫,是水平方向,所以這里是指的水平方向堆疊數(shù)組


函數(shù)column_stack將1維數(shù)組作為列堆疊成2維數(shù)組。 

from numpy import newaxis
np.column_stack((a,b))  


注:水平方向堆疊成二維數(shù)組


a = np.array([4.,2.])
b = np.array([2.,8.])
a[:,newaxis]  


注:切片出二維數(shù)組


np.column_stack((a[:,newaxis],b[:,newaxis]))


注:將兩個切片的二維數(shù)組組成新的二維數(shù)組


np.vstack((a[:,newaxis],b[:,newaxis]))


注:豎直方向堆疊出新的二維數(shù)組


注意:在復雜情況下,r_和c_對于通過沿一個軸堆疊數(shù)字來創(chuàng)建數(shù)組很有用。 它們允許使用范圍文字(“:”)

np.r_[1:4,0,4]


注:1—3,0,4組成數(shù)組


當使用數(shù)組作為參數(shù)時,r_和c_在其默認行為中類似于vstack和hstack,但允許使用可選參數(shù)來指定要連接的軸數(shù)。

查看這部分更多更詳細的用法可以看:https://docs.scipy.org/doc/numpy-dev/user/quickstart.html

下圖部分:



將一個數(shù)組分成幾個較小的數(shù)組

使用hsplit,可以沿著水平軸拆分數(shù)組,方法是指定要返回的等同形狀數(shù)組的數(shù)量,或者指定之后應該進行拆分的列

a = np.floor(10*np.random.random((2,12)))
a



np.hsplit(a,3)


注:將a數(shù)組水平方向切分成相等的3份


np.hsplit(a,(3,4))


注:從第三個和第四個后面分別切一刀,水平分成3塊新數(shù)組


np.hsplit(a,(3,))  


注:從第三個后面切一刀,水平分成2塊新數(shù)組


vsplit沿垂直軸分割,而array_split允許用來指定要分割的軸:

np.vsplit(a,(1,))  


注:從第一行后面切一刀,垂直分成2塊新數(shù)組


復制和視圖

當操作數(shù)組時,它們的數(shù)據(jù)有時被復制到一個新的數(shù)組中,有時候不會。 這往往是初學者混亂的根源。 有三種情況:

沒有復制的情況

簡單的賦值不會使數(shù)組對象或其數(shù)據(jù)被復制

a = np.arange(12)
b = a          
b is a      


注:這里a和b指向的是同一個數(shù)組,操作時并沒有產(chǎn)生新的復制內(nèi)容


b.shape = 3,4
a.shape


注:這里改變b數(shù)組的形狀,a的也發(fā)生了變化,說明這里a和b指向的是同一個數(shù)組


Python將可變對象作為引用傳遞,因此函數(shù)調(diào)用不會復制一份新的

def f(x):
    print(id(x))  
       
id(a)


f(a)


注:這里函數(shù)返回的結果id是相同的,所以函數(shù)調(diào)用不會復制一份新的內(nèi)容(id是對象的唯一標識)


視圖或淺拷貝

不同的數(shù)組對象可以共享相同的數(shù)據(jù)。 視圖方法創(chuàng)建一個包含相同數(shù)據(jù)的新數(shù)組對象

c = a.view()
c is a


注:通過view方法生成的c已經(jīng)和a不是同一個了


c.base is a


注:c是基于a的


c.flags.owndata


注:c擁有數(shù)據(jù)?:并沒有(因為c是拷貝了a的)


a.flags.owndata


注:a擁有數(shù)據(jù)


c.shape = 2,6

、

注:c的形狀(3行4列)


c[0,4] = 1234
a


注:在c中修改會傳到a中,因為數(shù)據(jù)實際保存在a中


切換數(shù)組返回其視圖:

s = a[ : , 1:3]    
s[:] = 10          
a


注:s[:]是s的視圖。注意s=10 和 s[:]=10的不同


深層復制

深層復制方法將完整復制數(shù)組及其數(shù)據(jù)

d = a.copy()                        
d is a


注:創(chuàng)建了新的數(shù)組和新的數(shù)據(jù)


d.base is a


注:d沒有和a共享任何數(shù)據(jù)


d[0,0] = 9999
a


注:d內(nèi)容修改不會影響a


函數(shù)和方法概述

這里列出了一些有用的NumPy函數(shù)和方法, 有關完整列表,請參閱例程:

https://docs.scipy.org/doc/numpy-dev/reference/routines.html#routines


今天更新內(nèi)容比較少,昨晚沒睡好,精神不佳,學校太熱了。

未完待續(xù)~近期更新~謝謝觀賞~希望對你學習有幫助~

關注公眾號,“Python愛好者社區(qū)”,回復“爬蟲”即可獲取崔老師爬蟲免費學習視頻。


Python愛好者社區(qū)


為大家提供與Python相關的最新技術和資訊。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Numpy對數(shù)組的操作:創(chuàng)建/變形(升降維等)/計算/取值/復制/分割/合并
Numpy的終極備忘錄
我的Python筆記·NumPy入門(一)
Numpy數(shù)組的索引與切片和變形拼接分裂
Python numpy的基本操作你一般人都不會
tensorflow學習(五):tensorflow和numpy中的隨機初始化函數(shù)小結
更多類似文章 >>
生活服務
熱點新聞
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服