Python Numpy(四)数据类型

NumPy 中的数据类型

NumPy 有一些额外的数据类型,并指代具有一个字符的数据类型,如i整数、u无符号整数等。

下面是 NumPy 中所有数据类型的列表以及用于表示它们的字符。

    • i - integer
    • b - boolean
    • u - unsigned integer
    • f - float
    • c - complex float
    • m - timedelta
    • M - datetime
    • O - object
    • S - string
    • U - unicode string
    • V - fixed chunk of memory for other type ( void )

检查数组的数据类型

NumPy 数组对象有一个名为的属性dtype ,它返回数组的数据类型:

例子

获取数组对象的数据类型:

import numpy as np

arr = np.array([1, 2, 3, 4])

print(arr.dtype)
自己试试 »

例子

获取包含字符串的数组的数据类型:

import numpy as np

arr = np.array(['apple', 'banana', 'cherry'])

print(arr.dtype)
自己试试 »

创建具有已定义数据类型的数组

我们使用该array()函数创建数组,该函数可以带一个可选参数:dtype 它允许我们定义数组元素的预期数据类型:

例子

创建一个数据类型为字符串的数组:

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='S')

print(arr)
print(arr.dtype)
自己试试 »

对于iuf, 我们SU可以定义大小。

例子

创建一个数据类型为 4 字节整数的数组:

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='i4')

print(arr)
print(arr.dtype)
自己试试 »

如果一个值无法转换怎么办?

如果给定的类型无法转换元素,则 NumPy 将引发 ValueError。

ValueError:在 Python 中,当传递给函数的参数类型意外/不正确时,会引发 ValueError。

例子

像 'a' 这样的非整数字符串不能转换为整数(会引发错误):

import numpy as np

arr = np.array(['a', '2', '3'], dtype='i')
自己试试 »

转换现有数组的数据类型

更改现有数组的数据类型的最佳方法是使用该astype()方法制作数组的副本。

astype()函数创建数组的副本,并允许您将数据类型指定为参数。

可以使用字符串指定数据类型,例如'f'浮点数、 'i'整数等,或者您可以直接使用数据类型,例如 float浮点数和int整数。

例子

'i'通过使用作为参数值将数据类型从浮点数更改为整数:

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype('i')

print(newarr)
print(newarr.dtype)
自己试试 »

例子

int通过使用作为参数值将数据类型从浮点数更改为整数:

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype(int)

print(newarr)
print(newarr.dtype)
自己试试 »

例子

将数据类型从整数更改为布尔值:

import numpy as np

arr = np.array([1, 0, 3])

newarr = arr.astype(bool)

print(newarr)
print(newarr.dtype)
转载于:

https://www.w3schools.com/python/numpy/numpy_data_types.asp

posted on 2022-03-28 19:47  -G  阅读(199)  评论(0)    收藏  举报

导航