如何转换NumPy数组的数据类型?
时间: 2024-10-27 17:13:43 浏览: 20
03-python-numpy-简介-基础-数组-数组类型
在NumPy中,你可以使用`astype()`函数来改变数组的数据类型。这个函数接受一个参数,即你想将数组转换成的新数据类型。新数据类型可以是Python的基本类型(例如整数、浮点数、字符串),也可以是NumPy的特殊数据类型(如`int8`, `float64`等)。
下面是一些示例:
```python
import numpy as np
# 创建一个包含不同类型元素的数组
arr = np.array([[1, 2.0], ['Hello', 3]])
# 将整数部分转为整数类型
arr_int = arr.astype(int)
print(arr_int) # 输出:[[1 2]
# [0 3]]
# 将字符串部分转为字符类型
arr_char = arr[:, 0].astype(str) # 只转换第一列
print(arr_char) # 输出:['1' 'Hello']
# 如果你想将整个数组转为统一类型,比如都转为浮点数
arr_float = arr.astype(np.float32)
print(arr_float)
```
请注意,不是所有的转换都是可行的,比如试图将非数值数据类型转换为数值类型,可能会引发错误。在尝试转换前,最好先确认原始数据是可以安全地转换到目标类型的。
阅读全文