Numpy 2D Array 深入解析

Numpy 2D Array 深入解析

参考:numpy 2d array

NumpyPython 中一个强大的数值计算扩展库,广泛应用于数据分析、科学计算和工程领域。本文将详细介绍 Numpy 2D array(二维数组)的创建、操作和应用,通过具体的示例代码来展示其功能和用法。

1. 创建二维数组

在 Numpy 中,二维数组可以通过多种方式创建,包括从列表转换、使用内置函数等。

示例代码 1:从列表创建二维数组

import numpy as np

# 创建一个二维数组
array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d)

Output:

Numpy 2D Array 深入解析

示例代码 2:使用 np.zeros 创建二维数组

import numpy as np

# 创建一个2x3的全0二维数组
zeros_array = np.zeros((2, 3))
print(zeros_array)

Output:

Numpy 2D Array 深入解析

示例代码 3:使用 np.ones 创建二维数组

import numpy as np

# 创建一个3x2的全1二维数组
ones_array = np.ones((3, 2))
print(ones_array)

Output:

Numpy 2D Array 深入解析

示例代码 4:使用 np.full 创建具有固定值的二维数组

import numpy as np

# 创建一个2x2的全5二维数组
full_array = np.full((2, 2), 5)
print(full_array)

Output:

Numpy 2D Array 深入解析

2. 访问二维数组元素

访问二维数组元素是数据处理中的基本操作,可以通过索引和切片来实现。

示例代码 5:通过索引访问二维数组元素

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
# 访问第一行第二列的元素
element = array_2d[0, 1]
print(element)

Output:

Numpy 2D Array 深入解析

示例代码 6:通过切片访问二维数组的子数组

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 获取前两行的前两列
sub_array = array_2d[:2, :2]
print(sub_array)

Output:

Numpy 2D Array 深入解析

3. 修改二维数组

修改二维数组的元素或结构是数据处理中常见的需求。

示例代码 7:修改二维数组中的元素

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
# 修改第一行第二列的元素
array_2d[0, 1] = 20
print(array_2d)

Output:

Numpy 2D Array 深入解析

示例代码 8:修改二维数组的形状

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
# 重新调整数组形状为(3, 2)
new_shape = array_2d.reshape(3, 2)
print(new_shape)

Output:

Numpy 2D Array 深入解析

4. 二维数组的运算

Numpy 提供了丰富的数学函数来支持数组的运算,包括加法、减法、乘法等。

示例代码 9:二维数组的加法

import numpy as np

array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
# 两个数组相加
result_add = np.add(array_1, array_2)
print(result_add)

Output:

Numpy 2D Array 深入解析

示例代码 10:二维数组的点乘

import numpy as np

array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
# 两个数组的点乘
result_dot = np.dot(array_1, array_2)
print(result_dot)

Output:

Numpy 2D Array 深入解析

5. 二维数组的统计运算

统计运算是数据分析中不可或缺的部分,Numpy 提供了多种统计函数来帮助处理数据。

示例代码 11:计算二绑数组的总和

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
# 计算所有元素的总和
total_sum = np.sum(array_2d)
print(total_sum)

Output:

Numpy 2D Array 深入解析

示例代码 12:计算二维数组的平均值

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
# 计算所有元素的平均值
mean_value = np.mean(array_2d)
print(mean_value)

Output:

Numpy 2D Array 深入解析

6. 二维数组的广播

广播(Broadcasting)是 Numpy 中一种强大的机制,允许不同形状的数组进行算术运算。

示例代码 13:二维数组与一维数组的广播

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
array_1d = np.array([1, 0, 1])
# 二维数组和一维数组相加
broadcasted_array = array_2d + array_1d
print(broadcasted_array)

Output:

Numpy 2D Array 深入解析

7. 二维数组的堆叠与分割

在处理多个数组时,经常需要将它们堆叠成一个更大的数组,或者将一个大数组分割成多个小数组。

示例代码 14:堆叠两个二维数组

import numpy as np

array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
# 垂直堆叠
stacked_array = np.vstack((array_1, array_2))
print(stacked_array)

Output:

Numpy 2D Array 深入解析

示例代码 15:水平分割二维数组

import numpy as np

array_2d = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
# 水平分割成两部分
split_arrays = np.hsplit(array_2d, 2)
print(split_arrays[0])
print(split_arrays[1])

Output:

Numpy 2D Array 深入解析

8. 二维数组的线性代数运算

Numpy 提供了一系列函数来支持线性代数运算,如矩阵乘法、求逆、行列式等。

示例代码 16:二维数组的矩阵乘法

import numpy as np

array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
# 矩阵乘法
matrix_product = np.matmul(array_1, array_2)
print(matrix_product)

Output:

Numpy 2D Array 深入解析

示例代码 17:计算二维数组的行列式

import numpy as np

array_2d = np.array([[1, 2], [3, 4]])
# 计算行列式
determinant = np.linalg.det(array_2d)
print(determinant)

Output:

Numpy 2D Array 深入解析

示例代码 18:计算二维数组的逆矩阵

import numpy as np

array_2d = np.array([[1, 2], [3, 4]])
# 计算逆矩阵
inverse_matrix = np.linalg.inv(array_2d)
print(inverse_matrix)

Output:

Numpy 2D Array 深入解析

9. 二维数组的排序

Numpy 提供了多种排序算法,包括快速排序、归并排序、堆排序等。

示例代码 19:对二维数组进行排序

import numpy as np

array_2d = np.array([[5, 1, 7], [8, 2, 6]])
# 对每一行进行排序
sorted_array = np.sort(array_2d)
print(sorted_array)

Output:

Numpy 2D Array 深入解析

10. 二维数组的文件操作

Numpy 提供了方便的文件读写函数,可以将二维数组保存到文件,或从文件中读取数据。

示例代码 20:将二维数组保存到文件

import numpy as np

array_2d = np.array([[1, 2, 3], [4, 5, 6]])
# 保存到文件
np.savetxt('numpyarray.com.txt', array_2d)

示例代码 21:从文件中读取二维数组

import numpy as np

# 从文件中读取数据
array_2d = np.loadtxt('numpyarray.com.txt')
print(array_2d)

Output:

Numpy 2D Array 深入解析

以上就是 Numpy 二维数组的详细介绍,包括创建、访问、修改、运算、统计、广播、堆叠与分割、线性代数运算、排序和文件操作等内容。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程