引入numpy模塊
首先,我們需要引入numpy模塊來使用其中的功能。在Python中,使用import語句可以將一個(gè)模塊導(dǎo)入到當(dāng)前代碼中。對于numpy模塊,我們可以使用以下代碼進(jìn)行導(dǎo)入:```pythonimport
首先,我們需要引入numpy模塊來使用其中的功能。在Python中,使用import語句可以將一個(gè)模塊導(dǎo)入到當(dāng)前代碼中。對于numpy模塊,我們可以使用以下代碼進(jìn)行導(dǎo)入:
```python
import numpy as np
```
這樣,我們就可以在代碼中使用numpy庫的函數(shù)和類了。
創(chuàng)建ndarray對象
在numpy中,ndarray是一個(gè)多維數(shù)組對象,用于存儲同類型的元素。默認(rèn)情況下,ndarray的數(shù)據(jù)類型為int32,即32位整數(shù)。我們可以使用()函數(shù)來創(chuàng)建一個(gè)ndarray對象,并通過print()函數(shù)輸出其值和數(shù)據(jù)類型。
```python
arr1 ([1, 2, 3])
print(arr1)
print(arr1.dtype) 輸出數(shù)組的數(shù)據(jù)類型,默認(rèn)為int32
```
輸出結(jié)果為:
```
[1 2 3]
int32
```
自動(dòng)推斷數(shù)據(jù)類型
當(dāng)我們創(chuàng)建一個(gè)包含浮點(diǎn)數(shù)的數(shù)組時(shí),默認(rèn)的數(shù)據(jù)類型會(huì)被自動(dòng)推斷為float64,即64位浮點(diǎn)數(shù)。
```python
arr1 ([1.22, 2.32, 3.43])
print(arr1)
print(arr1.dtype) 輸出數(shù)組的數(shù)據(jù)類型,默認(rèn)為float64
```
輸出結(jié)果為:
```
[1.22 2.32 3.43]
float64
```
即使我們在數(shù)組中混合了整數(shù)和浮點(diǎn)數(shù),數(shù)據(jù)類型仍然會(huì)被推斷為float64。
```python
arr1 ([1.22, 2.32, 3.43, 88])
print(arr1)
print(arr1.dtype) 輸出數(shù)組的數(shù)據(jù)類型,默認(rèn)為float64
```
輸出結(jié)果為:
```
[ 1.22 2.32 3.43 88. ]
float64
```
指定數(shù)據(jù)類型
在創(chuàng)建數(shù)組時(shí),我們也可以指定數(shù)據(jù)類型。使用dtype參數(shù)來指定想要的數(shù)據(jù)類型。
```python
arr1 ([1, 2, 3], dtype)
print(arr1)
print(arr1.dtype) 輸出數(shù)組的數(shù)據(jù)類型為int8
```
輸出結(jié)果為:
```
[1 2 3]
int8
```
修改數(shù)據(jù)類型
如果我們想要修改已有ndarray對象的數(shù)據(jù)類型,可以使用astype()函數(shù)。astype()函數(shù)將返回一個(gè)新的數(shù)組,其中的元素類型根據(jù)指定的數(shù)據(jù)類型進(jìn)行改變。
```python
float1 (np.float16)
print(float1)
print(float1.dtype) 輸出新數(shù)組的數(shù)據(jù)類型為float16
```
輸出結(jié)果為:
```
[1. 2. 3.]
float16
```
賦予其他數(shù)組的數(shù)據(jù)類型
除了使用astype()函數(shù)外,我們還可以直接將另一個(gè)數(shù)組的數(shù)據(jù)類型賦給某個(gè)數(shù)組,從而修改其數(shù)據(jù)類型。
```python
arr2 ([4, 5, 6])
print(arr2.dtype)
print(arr2)
g (float1.dtype)
print(g.dtype)
print(g)
```
輸出結(jié)果為:
```
int32
[4 5 6]
float16
[4. 5. 6.]
```
通過以上方法,我們可以輕松地定義和修改numpy中ndarray的數(shù)據(jù)類型,以滿足不同的需求。