数据类型
可以通过ndarray的dtype来打印数组中元素的类型
例: ndarray1.dtype
ndarray常见的数据类型如下:
例:
import numpy as np
ndarray1 = np.array([1, 2, 3, 4])
ndarray2 = np.array(list('abcdefg'))
ndarray3 = np.array([True, False, False, True])
class Person(object):
pass
ndarray4 = np.array([Person(), Person(), Person()])
输出结果:
ndarray1.dtype
dtype('int64')
ndarray2.dtype
dtype('<u1')
ndarray3.dtype
dtype('bool')
ndarray4.dtype
dtype('o')
使用astype函数转换数组类型
ndarray5 = np.array([1, 2, 3, 4, 5])
# 类型转换完毕返回新的数组
ndarray6 = ndarray5.astype(np.float32)
# 如果浮点数转换为整数,则小数部分将会被截断
ndarray7 = np.array([1.1, 2.2, 3.3, 4.4])
ndarray8 = ndarray7.astype(np.int32)
# 如果某些字符串数组表示的全是数字,也可以用astype将其转换为数值类型
ndarray9 = np.array(['10', '20', '30', '40'])
ndarray10 = ndarray9.astype(np.int32)
输出结果:
ndarray5.dtype
dtype('int64')
ndarray6.dtype
dtype('float32')
ndarray7
array([1.1, 2.2, 3.3, 4.4])
ndarray8
array([1, 2, 3, 4], dtype=int32)
ndarray9
array(['10','20','30','40'], dtype='<u2')
ndarray10
array([10, 20, 30, 40], dtype=int32)