# numpy
註1:執行軟體為jupyter notebook
註2:這是我第一次學習python,可能有錯
緩慢更新中2023/6/23
## 套件
```python=
import numpy as np #讀入套件
```
## numpy相關指令
```python=
載入Numpy套件: import numpy as np
查詢目前使用版本: np.__version__
查閱套件內容: np.info(np)/help(np)
查詢套件中某一函數: np.lookfor(‘function_name’)
```
## np.array
### 功能
創建陣列
### np.array用法
#### 普通版
```python=
>>> a = np.array([1, 2, 3, 4]) #一維陣列建立
>>> b = np.array([(2.5, 1, 3, 4.5), (5, 6, 7, 8)], dtype = float) #二維陣列建立
>>> c = np.array([[(2.5, 1, 3, 4.5), (5, 6, 7, 8)], [(2.5, 1, 3, 4.5), (5, 6, 7, 8)]], dtype = float) #三維陣列建立
```
#### 進階版
```python=
import numpy as np
np.zeros((2, 3)) # 建立一個2x3全為0的陣列
np.ones((2, 3, 4)) # 建立一個2x3x4全為1的陣列
np.arange(1, 10, 2) # 建立一個由1開始,不超過10,間隔值為2的均勻數值陣列
np.linspace(0, 10, 5) # 建立一個0到10之間,均勻的5個數值陣列
np.full((3,2), 8) # 建立一個3x2全為8的陣列
np.eye(2) # 建立一個5x5的單位矩陣
np.random.random((2,3)) # 建立一個2x3的隨機值矩陣
```
### 從其他陣列型態(list等等)轉為array型態
```python=
變數1=[1069.5,151,1515.1]#list型態
變數2=np.array(變數1)#array型態
```
註:當為array型態時相乘某數,此某數會把陣列中的所有元數都乘過一次
ex:

### 變更array的形狀
#### reshape/shape
```python=
array陣列名.reshape(開幾個個幾陣列,每一個陣列擁有幾個數)※打完後不會改變原本陣列,而是重新生成一個新陣列,需改變則:array=array.reshape
array陣列名.shape=(開幾個子陣列,每一個陣列擁有幾個元素)※會改變原本形狀 EX:before:100,after:2,50 OR 10,10
```
註:兩數相乘需與原本大小一致
ex:reshape
before:

after:

ex:shape
before:

after:

## np.arange
### 功能:提供一個數列
```python=
import numpy as np
np.arange(從哪開始(有包括),到哪結束(沒包括),間距為何)
```
註:查資料過程中,有查到dtype但我不會,所以並未介紹
ex:
# 參考資料
https://yayar.medium.com/python-numpy%E5%A5%97%E4%BB%B6%E5%9F%BA%E6%9C%AC%E4%BD%BF%E7%94%A8-55991a7a1c90
https://numpy.org/doc/stable/reference/generated/numpy.arange.html
e-wnat
# 其它文章
https://hackmd.io/@RwgiwD_zQHaL9zi1EW6ewg/HJKX1n3wh
https://hackmd.io/@RwgiwD_zQHaL9zi1EW6ewg/H1w19Tnwh