嗨!終於來到了1/2路程了,今天會繼續來說明Numpy的索引以及資料切割。
若是想看其他Numpy的介紹:
首先先匯入Numpy:
import numpy as np
新增資料:
arr = np.arange(10)
這跟python內的方法一樣,可以使用arange()
建立一個範圍的資料:
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
我們的資料是 : array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
和list一樣用[]就可以了:
arr[5]
可以得到 5
arr[5:8]
可以得到 5,6,7
我們改變索引第5到8的資料為7
narr[5:9] = 7
可以看到結果:
array([ 0, 1, 2, 3, 4, 7, 7, 7, 8, 9])
在這我們可以只改變局部的資料,這就是所謂的Slicing:
myarr = np.arange(10)
slice = myarr[5:8]
myarr[5:8] = 7
slice[1] = 87
myarr
對得到結果:
array([ 0, 1, 2, 3, 4, 7, 87, 7, 8, 9])
第一行:建立的一個範圍0-9的資料
第二行:將5、6、7改為數字7
第三行:建立一個變數slice,內容為myarr[5:8],也就是[7,7,7]
第四行:改變slice第1個索引為87
第五行:輸出myarr
可以看到我們局部修改了myarr的資料!
如果你剛接觸Numpy應該會覺得很神奇吧!因為numpy它常用來處理很大型的資料,所以這樣局部修改的功能是非常方便的,可以不需要另外複製一份!
下一次將會介紹更多的numpy資料操作,講解Numpy的廣播功能,明天見。