Python numpy.common_type()函数详解
函数介绍
numpy.common_type()
函数返回一个数组元组的公共数据类型。
语法
numpy.common_type(*arrays)
参数
*arrays
:多个数组,可以有不同的数据类型。
返回值
返回输入数组的公共数据类型,例如,如果一个数组是浮点类型,而另一个数组是整数类型,则返回浮点类型。
示例1
import numpy as np
# 创建数组
a = np.array([1, 2, 3, 4])
b = np.array([1.2, 2.3, 3.4, 4.5])
c = np.array(['1.2', '2.3', '3.4', '4.5'])
# 获取数组数据类型
dt1 = a.dtype
dt2 = b.dtype
dt3 = c.dtype
# 获取数组中的公共数据类型
common_dt = np.common_type(dt1, dt2, dt3)
print(common_dt)
输出结果:
|S3
示例2
import numpy as np
# 创建数组
a = np.array([1, 2, 3, 4], dtype=np.int32)
b = np.array([1.2, 2.3, 3.4, 4.5], dtype=np.float64)
# 获取数组数据类型
dt1 = a.dtype
dt2 = b.dtype
# 获取数组中的公共数据类型
common_dt = np.common_type(dt1, dt2)
# 根据公共数据类型分别转换数组类型
a = a.astype(common_dt)
b = b.astype(common_dt)
print(a.dtype)
print(b.dtype)
输出结果:
float64
float64
注意事项
在使用numpy.common_type()
函数时,需要保证输入的所有数组有公共数据类型。如果没有公共数据类型,则该函数会导致程序运行时错误。可以使用numpy.result_type()
函数来获取一组数组的公共数据类型和返回数组的类型(可用于n维数组)。