>>> importnumpy as np
>>> a = np.random.randint(10,size=(5,5))
>>>a
array([[0, 8, 3, 0, 2],
[0, 6, 6, 6, 3],
[0, 3, 6, 8, 7],
[2, 6, 1, 4, 4],
[4, 1, 5, 6, 4]])
1. 陣列切片
隨機生成5x5的乙個矩陣
提取矩陣第n列
>>> a[:,3]array([0, 6, 8, 4, 6])
提取矩陣第n行
>>> a[3,:]array([2, 6, 1, 4, 4])
提取矩陣第n行到第n+m行
>>> a[1:4]array([[0, 6, 6, 6, 3],
[0, 3, 6, 8, 7],
[2, 6, 1, 4, 4]])
提取矩陣第n行到第n+m列
>>> a[:,1:4]array([[8, 3, 0],
[6, 6, 6],
[3, 6, 8],
[6, 1, 4],
[1, 5, 6]])
使用布林陣列選取資料集中大於4的數字
>>> a[a>4]array([8, 6, 6, 6, 6, 8, 7, 6, 5, 6])
使用布林陣列選取資料集中第二列大於3的數字所在的行
>>> a[a[:,1]>3]array([[0, 8, 3, 0, 2],
[0, 6, 6, 6, 3],
[2, 6, 1, 4, 4]])
使用布林陣列選取資料集中第二列等於3的數字所在的行
>>> a[a[:,1]==6]array([[0, 6, 6, 6, 3],
[2, 6, 1, 4, 4]])
使用布林陣列設定值,把陣列a中小於4的值都設定為0
>>> a[a<4]=0>>>a
array([[0, 8, 0, 0, 0],
[0, 6, 6, 6, 0],
[0, 0, 6, 8, 7],
[0, 6, 0, 4, 4],
[4, 0, 5, 6, 4]])
使用一維布林陣列設定整行或列:把第一列中含有數字6的行,全部設定為7
>>> a[a[:,1]==6]=7>>>a
array([[0, 8, 3, 0, 2],
[7, 7, 7, 7, 7],
[0, 3, 6, 8, 7],
[7, 7, 7, 7, 7],
[4, 1, 5, 6, 4]])
取特定順序行的陣列,通過傳遞乙個列表或整形ndarray來指定想要的順序
>>> a[[1,3,4]]array([[7, 7, 7, 7, 7],
[7, 7, 7, 7, 7],
[4, 1, 5, 6, 4]])
2.陣列索引
返回array中數字6的索引值
>>> np.where(a==6)(array([1, 1, 1, 2, 3, 4]), array([1, 2, 3, 2, 1, 3]))
返回的是乙個tuple,第乙個代表的是按列查詢的索引值,第二個代表的是按行查詢的索引值
類似的
>>> np.argwhere(a==6)array([[1, 1],
[1, 2],
[1, 3],
[2, 2],
[3, 1],
[4, 3]])
返回的是乙個array
3.型別轉換
型別轉換
>>>a.astype(np.float)array([[0., 8., 3., 0., 2.],
[0., 6., 6., 6., 3.],
[0., 3., 6., 8., 7.],
[2., 6., 1., 4., 4.],
[4., 1., 5., 6., 4.]])
>>>a.astype(np.str)
array([['0
', '
8', '
3', '
0', '2'
], ['0
', '
6', '
6', '
6', '3'
], ['0
', '
3', '
6', '
8', '7'
], ['2
', '
6', '
1', '
4', '4'
], ['4
', '
1', '
5', '
6', '
4']], dtype='
')
陣列和純量之間的操作
>>> a*aarray([[ 0, 64, 9, 0, 4],
[ 0, 36, 36, 36, 9],
[ 0, 9, 36, 64, 49],
[ 4, 36, 1, 16, 16],
[16, 1, 25, 36, 16]])
>>> a-a
array([[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0]])
純量的算術操就是把操作值作用於每乙個元素
>>> a-3array([[-3, 5, 0, -3, -1],[-3, 3, 3, 3, 0],
[-3, 0, 3, 5, 4],
[-1, 3, -2, 1, 1],
[ 1, -2, 2, 3, 1]])
>>> a*3array([[ 0, 24, 9, 0, 6],
[ 0, 18, 18, 18, 9],
[ 0, 9, 18, 24, 21],
[ 6, 18, 3, 12, 12],
[12, 3, 15, 18, 12]])
numpy對於矩陣的一些基本操作
import numpy as np n1 np.array 1,2 3,4 n2 np.array 1,2 3,6 矩陣加矩陣,對應位置相加,但是shape必須相同 也就是必須都是2 2的 print n1 n2 2 4 6 10 矩陣與標量相加,就是將標量挨個加到矩陣元素中去 print n1 ...
numpy矩陣的基礎操作
import numpy delimiter分隔符,dtype資料格式 word alcho numpy.genfromtxt d qiujiahao4.txt delimiter dtype str print type word alcho print word alcho 0 1 2 3 4 ...
docker 常用操作持續更
docker日誌檢視 docker logs f tail 100 containerid docker ps 檢視活動的容器 a檢視所有容器 docker start stop restart containerid 啟動,停止,重啟docker容器 docker rm rmi 刪除容器 映象 d...