数据处理必备:NumPy与pandas库全解析
1. NumPy结构化数组
在之前的示例中,我们常见的是一维和二维数组。实际上,NumPy 能创建更复杂的数组,即结构化数组。这种数组包含结构体或记录,而非单个元素。
我们可以使用 dtype
选项创建简单的结构体数组,通过逗号分隔的说明符来指定结构体的元素、数据类型和顺序。以下是一些常见的数据类型说明符:
| 数据类型 | 说明符 |
| ---- | ---- |
| 字节 | b1 |
| 整数 | i1, i2, i4, i8 |
| 无符号整数 | u1, u2, u4, u8 |
| 浮点数 | f2, f4, f8 |
| 复数 | c8, c16 |
| 定长字符串 | a |
例如,创建一个包含整数、长度为 6 的字符串和布尔值的结构体数组:
import numpy as np
structured = np.array([(1, 'First', 0.5, 1+2j),(2, 'Second', 1.3, 2-2j), (3, 'Third', 0.8, 1+3j)],dtype=('i2, a6, f4, c8'))
print(structured)
也可以显式指定数据类型,如 int16
、 float32
等:
structured =