使用 NumPy 进行数组操作的示例

简介: 使用 NumPy 进行数组操作的示例

使用 NumPy 进行数组操作的示例
NumPy 是Python中一个强大的数值计算库,它提供了高效的数组操作和数学运算。本文将通过一个具体示例,演示如何使用 NumPy 创建数组、进行基本统计分析、执行元素级运算以及数组重塑等操作。

示例任务
我们将创建一个名为 A 的 4 x 4 的 NumPy 数组,其元素为数字 3 到 18。接着,我们将输出该数组中的最小值、最大值和平均值,并执行一系列其他操作,包括平方、堆叠及乘积计算。

步骤 1: 创建数组 A
首先,我们使用 np.arange() 创建一个包含从 3 到 18 的数组,并使用 np.reshape() 将其调整为 4 x 4 的形状。

import numpy as np

# 创建数组 A
A = np.arange(3, 19).reshape(4, 4)
print("Array A:")
print(A)

运行结果如下:

Array A:
[[ 3  4  5  6]
 [ 7  8  9 10]
 [11 12 13 14]
 [15 16 17 18]]

步骤 2: 输出数组 A 的统计信息
我们可以使用 NumPy 提供的函数来获取数组 A 的最小值、最大值和平均值。

# 输出 A 的最小值、最大值和平均值
min_value = np.min(A)
max_value = np.max(A)
mean_value = np.mean(A)

print(f"最小值: {min_value}")
print(f"最大值: {max_value}")
print(f"平均值: {mean_value}")

运行结果如下:

最小值: 3
最大值: 18
平均值: 10.5

步骤 3: 计算 A 中每个元素的平方,并保存到数组 B
使用 ** 运算符对 A 中的每个元素求平方,然后将结果保存到名为 B 的数组中。

# 计算每个元素的平方,保存到 B
B = A ** 2
print("Array B (A的平方):")
print(B)

运行结果如下:

Array B (A的平方):
[[  9  16  25  36]
 [ 49  64  81 100]
 [121 144 169 196]
 [225 256 289 324]]

步骤 4: 使用 np.vstack() 将 A 和 B 堆叠,并保存到 C
然后,我们将 A 和 B 垂直堆叠,结果保存在数组 C 中。

# 垂直堆叠 A 和 B
C = np.vstack((A, B))
print("Array C (堆叠 A 和 B):")
print(C)

运行结果如下:

Array C (堆叠 A 和 B):
[[  3   4   5   6]
 [  7   8   9  10]
 [ 11  12  13  14]
 [ 15  16  17  18]
 [  9  16  25  36]
 [ 49  64  81 100]
 [121 144 169 196]
 [225 256 289 324]]

步骤 5: 计算 C 乘以 A 的乘积
使用 @ 运算符计算 C 和 A 的矩阵乘积。

# 计算 C 乘以 A
product = C @ A
print("C 乘以 A 的乘积:")
print(product)

运行结果如下:

C 乘以 A 的乘积:
[[  182   200   218   236]
 [  326   360   394   428]
 [  470   520   570   620]
 [  614   680   746   812]
 [  954  1040  1126  1212]
 [ 2986  3280  3574  3868]
 [ 6170  6800  7430  8060]
 [10506 11600 12694 13788]]

步骤 6: 重构 C 为维度为 4 x 4 x 2 的数组
最后,我们将 C 重构为一个形状为 4 x 4 x 2 的数组。

# 重构 C 为 4x4x2 的数组
reshaped_C = C.reshape(4, 4, 2)
print("重构后的 C:")
print(reshaped_C)

运行结果如下:

重构后的 C:
[[[  3   4]
  [  5   6]
  [  7   8]
  [  9  10]]

 [[ 11  12]
  [ 13  14]
  [ 15  16]
  [ 17  18]]

 [[  9  16]
  [ 25  36]
  [ 49  64]
  [ 81 100]]

 [[121 144]
  [169 196]
  [225 256]
  [289 324]]]

完整代码
以下是上述所有步骤的完整代码示例:

import numpy as np

# 创建数组 A
A = np.arange(3, 19).reshape(4, 4)
print("Array A:")
print(A)

# 输出 A 的最小值、最大值和平均值
min_value = np.min(A)
max_value = np.max(A)
mean_value = np.mean(A)

print(f"最小值: {min_value}")
print(f"最大值: {max_value}")
print(f"平均值: {mean_value}")

# 计算每个元素的平方,保存到 B
B = A ** 2
print("Array B (A的平方):")
print(B)

# 垂直堆叠 A 和 B
C = np.vstack((A, B))
print("Array C (堆叠 A 和 B):")
print(C)

# 计算 C 乘以 A
product = C @ A
print("C 乘以 A 的乘积:")
print(product)

# 重构 C 为 4x4x2 的数组
reshaped_C = C.reshape(4, 4, 2)
print("重构后的 C:")
print(reshaped_C)

结论
通过这个示例,我们展示了如何利用 NumPy 创建数组、进行基本的统计分析、执行矩阵运算和数组重塑。这些功能使得 NumPy 成为科学计算和数据分析中不可或缺的工具。希望这篇文章能帮助您更好地理解和使用 NumPy!

原创不易,欢迎点赞、关注和转发!!!

相关文章
|
1月前
|
Python
Numpy学习笔记(四):如何将数组升维、降维和去重
本文介绍了如何使用NumPy库对数组进行升维、降维和去重操作。
32 1
|
1月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧2
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
69 10
|
1月前
|
Python
Numpy学习笔记(五):np.concatenate函数和np.append函数用于数组拼接
NumPy库中的`np.concatenate`和`np.append`函数,它们分别用于沿指定轴拼接多个数组以及在指定轴上追加数组元素。
25 0
Numpy学习笔记(五):np.concatenate函数和np.append函数用于数组拼接
|
1月前
|
索引 Python
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧1
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
85 4
|
1月前
|
机器学习/深度学习 并行计算 调度
CuPy:将 NumPy 数组调度到 GPU 上运行
CuPy:将 NumPy 数组调度到 GPU 上运行
55 1
|
2月前
|
Python
numpy | 插入不定长字符数组测试OK
本文介绍了如何在numpy中创建和操作不定长字符数组,包括插入和截断操作的测试。
|
2月前
|
API Python
Numpy 数组的一些集合操作
Numpy 数组的一些集合操作
30 0
|
2月前
|
编译器 Linux API
基于类型化 memoryview 让 Numpy 数组和 C 数组共享内存
基于类型化 memoryview 让 Numpy 数组和 C 数组共享内存
35 0
|
3月前
|
索引 Python
|
2月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
73 0