三、numpy屬性
四、numpy基礎運算
2.統計數**算
3.其他基礎運算
import numpy as np
a=np.array([2,3,4],dtype=np.int64)
print(a.dtype)
>>>
int64
a=np.array([2,3,4],
[2,3,4])
a=np.zero((3,4)) #三行四列零矩陣
a=np.ones() #所有元素都是1的矩陣
a=np.arange(10,20,2) #以10起始,到20終止(不包括20),以2為步長的陣列
>>>
[10 12 14 16 18]
a=np.arange(12).reshape((3,4)) #一行十二列,重置格式為三行四列
linspace(start, stop, num=50, endpoint=true, retstep=false, dtype=none)
作用為:在指定的大間隔內,返回固定間隔的資料。他將返回「num」個等間距的樣本,在區間[start, stop]中。其中,區間的結束端點可以被排除在外。
a=np.linspace(1,10,4)
>>>
[ 1. 4. 7. 10.]
ndim返回的是陣列的維度,返回的只有乙個數,該數即表示陣列的維度。import numpy as np
array=np.array([[
1,2,
3],[
2,3,
4]])
(array)
>>
>[[
123]
[234
]]
print('number of dim:',array.ndim)
>>>
number of dim: 2
print('shape:',array.shape)
>>>
shape: (2, 3)
print('size:',array.size)
>>>
size: 6
對應位置相加減import numpy as np
a=np.array([10,20,30,40])
b=np.arange(4)
print(a)
print(b)
c = a + b
d= a-b
# c = b ** 2 # b的平方
print(c)
print(d)
[10 20 30 40]
[0 1 2 3]
[10 21 32 43]
[10 19 28 37]
e=b**2 #b陣列的每乙個元素求平方
f=10*np.sin(a) #a陣列每乙個元素的sin函式
>>>
[0 1 4 9]
[-5.44021111 9.12945251 -9.88031624 7.4511316 ]
print(c)
>>>
[ 0 20 60 120]
(2)c_dot=a.dot(b)a=np.array([[2,4],[2,4]])
print(a)
b=np.array([[2,2],[2,2]])
c_dot=np.dot(a,b)
print(c_dot)
>>>
[[2 4]
[2 4]]
[[12 12]
[12 12]]
c_dot=a.dot(b)
print(c)
>>>
[[12 12]
[12 12]]
a=np.array([[2,4],[2,4]])
np.sum(a) #所有數字的和
np.min(a) #找到最小值
np.max(a) #找到最大值
np.mean(a,axis=0)#對於列進行計算平均值
>>>122
4[2. 4.]
a=np.array([[4,2],[3,4]])
print(np.median(a,axis=0)) #對於列取中位數
>>>
[3.5 3. ]
a=np.array([[2,4],[2,4]])
np.sum(a,axis=1)#行求和,axis=0是列
>>>
[6 6]
numpy.argmin(a,axis=none,out=none)[source]
給出axis方向最小值的下標
試驗:
鋪平之後『0』所在位置就是2import numpy as np
a=np.array([[4,2],
[0,4]])
print(np.argmin(a)) #對於列進行計算平均值
>>>
2
除了argmin還有argmax/argmean/argmedian
試驗cumsum(a, axis=none, dtype=none, out=none)
a.cumsum(axis=none, dtype=none, out=none)
import numpy as np
arr=np.array([[1,2,3],[4,5,6],[7,8,9]])
#沿著axis=0軸計算
result1=arr.cumsum(0)
print(result1)
>>>
[[ 1 2 3]
[ 5 7 9]
[12 15 18]]
numpy.diff(a, n=1,axis=-1)
沿著指定軸計算第n維的離散差值 ,就是n位元素
和n+1位元素
的差
返回的是import numpy as np
a= np.arange(0,12).reshape((3,4))
result=np.diff(a)
print(result)
>>>
[[1 1 1]
[1 1 1]
[1 1 1]]
陣列中,非零元素的位置
。如果是二維陣列就是描述非零元素在幾行幾列,三維陣列則是描述非零元素在第幾組中的第幾行第幾列。
試驗
第乙個array描述行,第二個array描述列,我們把結果轉變下以便理解:import numpy as np
a = np.array([[1, 2, 3], [4, 5, 0], [6, 0, 7]])
result=np.nonzero(a)
print(result)
>>>
(array([0, 0, 0, 1, 1, 2, 2], dtype=int64), array([0, 1, 2, 0, 1, 0, 2], dtype=int64))
array([0, 0, 0, 1, 1, 2, 2]
array([0, 1, 2, 0, 1, 0, 2]
非零元素位置:(0,0)(0,1)(0,2)…
numpy.sort() 函式返回輸入陣列的排序副本。import numpy as np
a = np.array([[1, 2, 3], [4, 5, 0], [6, 0, 7]])
result1=a.t
result2=np.transpose(a)
print(result1)
print(result2)
>>>
[[1 4 6]
[2 5 0]
[3 0 7]]
[[1 4 6]
[2 5 0]
[3 0 7]]
numpy.sort(a, axis, kind, order)
試驗
import numpy as np
a = np.array([[8, 2, 3], [4, 5, 2], [6, 9, 7]])
print (np.sort(a))
print (np.sort(a,axis=0))
>>>
[[2 3 8]
[2 4 5]
[6 7 9]]
[[4 2 2]
[6 5 3]
[8 9 7]]
python科學計算包numpy用法(一)
numpy是python中乙個用來做科學計算的包,用起來十分方便,下面是我總結的numpy的用法 1.如何建立矩陣 建立矩陣有很多種方法,主要包括以下幾種 通過array函式建立 1 import numpy as np 2 a np.array 2,3,4 生成一維矩陣 4 array 2,3,4...
Python資料科學numpy的基礎屬性 建立
numpy是乙個底層為ndarray型別的資料科學包,特點是快速的科 算,以陣列形式存在的。通常和pandas matplotlibs合用,含有較多的統計分析函式。a np.array 20,3,24 23,4,2 print 陣列形狀 str a.shape print 陣列的軸數 str a.n...
Python基礎 資料科學入門(十)numpy庫
1.1 低效的python for迴圈 例 求100萬個數的倒數 def compute reciprocals values res for value in values 1 value return res values list range 1 10000 timeit compute re...