學習筆記(30):零基礎搞定Python數據分析與挖掘-數組的介紹(二)

立即學習:https://edu.csdn.net/course/play/6861/371096?utm_source=blogtoedu

性能比較:

import random
h = []
w = []
for i in range(100000):
    h.append(random.randint(153,180))
    w.append(random.uniform(51,88))

%%time
bmi = []
for i in range(100000):
    bmi.append(w[i]/(h[i]/100) ** 2)

Wall time: 95 ms

H = np.array(h)
W = np.array(w)

%%time
BMI = W/(H/100)**2

Wall time: 31 ms

1、數組實現的運算要比列表要快。

2、通過數組運算能達到更好的效果

 

二維數組:

#基於嵌套列表創建二維數組
arr1 = np.array([[1,2,3,4],[2,3,4,5],[11,23,16,18],[100,101,102,103]])
#基於嵌套元組創建二維數組
arr2 = np.array(((1,2,3,4),(2,3,4,5),(11,23,16,18),(100,101,102,103)))
#二維數組的打印結果
print(arr1,'\n')
print(arr2)

[[  1   2   3   4]
 [  2   3   4   5]
 [ 11  23  16  18]
 [100 101 102 103]] 

[[  1   2   3   4]
 [  2   3   4   5]
 [ 11  23  16  18]
 [100 101 102 103]]

數組元素的返回

1、在一維數組中,列表的所有索引方法都可以使用在數組中,而且還可以使用間斷索引和邏輯索引。

2、在二維數組中,位置索引必須寫成[rows,cols]的形式,方括號的前半部分用於鎖定二維數組的行索引,後半部分用於鎖定數組的列索引。

3、如果要獲取二維數組的所有行和列元素,那麼對於的行索引或者列索引需要英文狀態的冒號表示。

#一維數組的索引有四種方式
arr1 = np.array([13,19,22,14,19,11])
#索引、切片
print(arr1[-1])

print(arr1[:3])
#間斷索引和邏輯索引
print(arr1[[1,3,5]])
print(arr1 <15)
print(arr1[arr1 < 15])

結果如下:

11
[13 19 22]
[19 14 11]
[ True False False  True False  True]
[13 14 11]

#二維數組的索引
arr1=np.array([[1,2,3],[3,4,5],[2,34,5]])
#取出34
print(arr1[2,1])
#取出第二行
print(arr1[1,:])

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章