copy():陣列的複製
.astype():陣列型別轉換
陣列堆疊(引數使用元祖)
陣列拆分
陣列簡單運算
轉置,一維陣列轉置後結果不變,二維陣列的行列交換(2,5) → (5,2)
import numpy
ar = numpy.zeros((5
,2))
print
(ar)
print
(ar.t)
# 原陣列的行列和改變後的行列要保持一致,例如(0,10) = (5,2)
ar2 = numpy.arange(0,
10)print
(ar2)
print
(ar2.reshape(5,
2))# 用法1:直接將已有陣列改變形狀
# 用法2:生成陣列後直接改變形狀
print
(numpy.zeros((5
,6))
.reshape(10,
3))# 用法3:引數內新增陣列,然後修改目標形狀
print
(numpy.reshape(numpy.arange(0,
16),(
2,8)
))
# 用法一:返回具有指定形狀的新陣列,如元素不夠則重複填充所需數量的元素
print
(numpy.resize(numpy.arange(5)
,(3,
4)))
# 如果元素超出所需元素,則按所需元素為準
print
(numpy.resize(numpy.arange(15)
,(3,
4)))
ar = numpy.arange(0,
10)# 用法二:雖然輸出 none,但是直接修改了陣列本身
print
(ar.resize(2,
5))print
(ar)
注意:.t/.reshape()/.resize()都是生成新的陣列
# 賦值邏輯:指向記憶體中生成的乙個值 →
# 這裡ar1和ar2指向同乙個值,所以ar1改變,ar2一起改變
import numpy
ar1 = numpy.arange(0,
10)ar2 = ar1
print
(ar2)
ar1[1]
=10print
(ar2)
# copy():生成陣列及其資料的完整拷貝,不受前陣列影響
ar3 = ar1.copy(
) ar1[1]
=20print
(ar2)
print
(ar3)
import numpy
ar1 = numpy.arange(0,
10,dtype =
float
)ar2 = ar1.astype(numpy.int64)
# 預設numpy.int為int32
print
(ar1,ar1.dtype)
print
(ar2,ar2.dtype)
# 注意:養成好習慣,陣列型別用numpy.int32,而不是直接int32
hstack():橫向連線,vstack():垂直連線
stack(array,axis):任意連線
import numpy
ar1 = numpy.arange(0,
5)ar2 = numpy.arange(5,
10)print
(numpy.hstack(
(ar1,ar2)))
# 橫向連線
ar3 = numpy.array([[
1],[
2],[
3]])
ar4 = numpy.array([[
"a"],[
"b"]])
print
(numpy.vstack(
(ar3,ar4)))
# 豎向連線
# 重點解釋axis引數的意思,假設兩個陣列[1 2 3]和[4 5 6],shape均為(3,0)
# axis=0:[[1 2 3] [4 5 6]],shape為(2,3)
# axis=1:[[1 4] [2 5] [3 6]],shape為(3,2)
ar5 = numpy.arange(1,
4)ar6 = numpy.arange(4,
7)print
(numpy.stack(
(ar5,ar6)
,axis =0)
)
hsplit():橫向拆分,vsplit():垂直拆分
import numpy
ar = numpy.arange(0,
16).reshape(4,
4)print
(ar)
# 將陣列水平(逐列)拆分為多個子陣列 → 按列拆分
print
(numpy.hsplit(ar,2)
)# 將陣列垂直(逐行)拆分為多個子陣列 → 按行拆分
print
(numpy.vsplit(ar,4)
)# 輸出結果為列表,列表中元素為陣列
import numpy
ar = numpy.arange(6)
.reshape(2,
3)print
(ar)
print
(ar +10)
# 加法
print
(ar *2)
# 乘法
print(1
/(ar+1)
)# 除法
print
(ar **2)
# 冪# 與標量的運算
print
(ar.mean())
# 求平均值
print
(ar.
max())
# 求最大值
print
(ar.
min())
# 求最小值
print
(ar.std())
# 求標準差
print
(ar.var())
# 求方差
# 求和,numpy.sum() → axis = 0:按列求和,axis = 1:按行求和
print
(ar.
sum(
), numpy.
sum(ar,axis =0)
)print
(numpy.sort(numpy.array([1
,4,3
,2,5
,6])
))# 排序
numpy 通用函式
導包import numpy as np ceil向上取整,floor向下取整,rint四捨五入,abs取絕對值,nevigate消極的,square平方,sqrt平方根,modf將小數部分和整數部分分開,isnan 查詢是否為空 arr1 np.random.uniform 5,10,3,4 pr...
numpy 通用函式
通用函式 能同時對陣列中所有元素進行運算的函式。常見的通用函式 一元函式 abs 絕對值 sqrt 開根號 exp,log,ceil,floor,rint rount,trunc,modf,isnan,isinf,cos,sin,tan 二元函式 add,substract,multiply,div...
numpy 通用函式
numpy為我們提供了一些列常用的數學函式,比如sin cos exp等等,這些被稱作 通用函式 ufunc 在numpy中,這些函式都是對陣列的每個元素進行計算,並將結果儲存在乙個新陣列中。b np.arange 3 b array 0,1,2 np.exp b array 1.2.7182818...