您的位置:

利用Python数组分析和操作数据

一、Python数组的基本操作

Python中的数组是一种高效存储和操作大量相同类型数据的方式。使用Python内置的NumPy库可以更方便地进行数组的操作。在Python中创建数组的方法如下:
import numpy as np

# 创建 numpy 一维数组
arr1D = np.array([1, 2, 3, 4, 5])

# 创建 numpy 二维数组
arr2D = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
通过索引获取数组元素:
# 获取一维数组的某个元素
print(arr1D[0])

# 获取二维数组的某个元素
print(arr2D[1][2])

二、数组运算

在对数组进行运算时,可以对整个数组进行逐元素操作,而不需要使用循环。以下是一些常见的数组运算操作: 求平均数:
# 求一维数组的平均数
print(np.mean(arr1D))

# 求二维数组的平均数
print(np.mean(arr2D))
求和:
# 求一维数组的和
print(np.sum(arr1D))

# 求二维数组的和
print(np.sum(arr2D))
上面使用了NumPy库的mean()和sum()函数进行数组运算。

三、数组过滤与排序

在处理数据时,许多情况下需要对数组进行过滤和排序。以下是一些常见的过滤和排序操作: 数组过滤:
# 过滤出数组中大于 3 的元素
arr1D_filtered = arr1D[arr1D > 3]
print(arr1D_filtered)

# 过滤出二维数组中大于 5 的元素
arr2D_filtered = arr2D[arr2D > 5]
print(arr2D_filtered)
数组排序:
# 对一维数组进行升序排序
arr1D_sorted = np.sort(arr1D)
print(arr1D_sorted)

# 对二维数组进行按列排序
arr2D_sorted = np.sort(arr2D, axis=0)
print(arr2D_sorted)

四、数组形状变换

在处理数据时,有时需要将数组的形状进行变换。以下是一些常见的数组形状变换操作: 将一维数组变为二维数组:
# 变为2×3的二维数组
arr1D_2D = arr1D.reshape(2,3)
print(arr1D_2D)
将二维数组变为一维数组:
arr2D_1D = arr2D.flatten()
print(arr2D_1D)

五、数组文件读写

在处理数据时,常常需要将数组数据保存到文件中或者从文件中读取数据。以下是一些常见的文件读写操作: 将数组保存到文件:
# 将数组保存至txt文件
np.savetxt("arr.txt", arr2D_sorted, fmt="%d")   # fmt可以设置输出的格式。这里设置输出为整数。

# 将数组保存至npy文件
np.save("arr.npy", arr2D_sorted)
从文件中读取数组:
# 从txt文件中读取数组
arr_txt = np.loadtxt("arr.txt")
print(arr_txt)

# 从npy文件中读取数组
arr_npy = np.load("arr.npy")
print(arr_npy)

六、结语

本文介绍了Python数组的基本操作、数组运算、数组过滤与排序、数组形状变换以及数组文件读写等方面的知识。对于需要进行数据处理和分析的Python工程师,掌握这些知识点将能更快速、高效地完成数据分析。