Python NumPy教程之数组如何创建

发布时间:2022-08-26 14:12:45 作者:iii
来源:亿速云 阅读:156

Python NumPy教程之数组如何创建

目录

  1. 引言
  2. NumPy简介
  3. 安装NumPy
  4. 创建NumPy数组
    1. 从Python列表创建数组
    2. 使用np.array()函数创建数组
    3. 使用np.zeros()np.ones()创建数组
    4. 使用np.arange()创建数组
    5. 使用np.linspace()创建数组
    6. 使用np.random模块创建数组
    7. 使用np.eye()创建单位矩阵
    8. 使用np.full()创建填充数组
  5. 数组的属性
  6. 数组的形状操作
  7. 数组的数据类型
  8. 总结

引言

NumPy(Numerical Python)是Python中用于科学计算的核心库之一。它提供了一个高性能的多维数组对象,以及用于操作这些数组的工具。NumPy数组是Python中处理数值数据的基础,广泛应用于数据分析、机器学习、图像处理等领域。

本文将详细介绍如何使用NumPy创建数组,涵盖从简单的列表转换到复杂的随机数组生成等多种方法。通过本文,您将掌握NumPy数组的基本创建技巧,并了解如何操作和利用这些数组进行高效的数据处理。

NumPy简介

NumPy是Python中用于科学计算的基础库,提供了高效的多维数组对象ndarray,以及大量的数学函数来操作这些数组。NumPy的核心功能包括:

安装NumPy

在使用NumPy之前,需要确保已经安装了NumPy库。可以通过以下命令安装NumPy:

pip install numpy

安装完成后,可以通过以下代码验证NumPy是否安装成功:

import numpy as np
print(np.__version__)

如果输出了NumPy的版本号,说明安装成功。

创建NumPy数组

从Python列表创建数组

NumPy数组可以从Python列表或元组创建。使用np.array()函数可以将Python列表转换为NumPy数组。

import numpy as np

# 从列表创建一维数组
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1)

# 从嵌套列表创建二维数组
arr2 = np.array([[1, 2, 3], [4, 5, 6]])
print(arr2)

输出结果:

[1 2 3 4 5]
[[1 2 3]
 [4 5 6]]

使用np.array()函数创建数组

np.array()函数是创建NumPy数组的最基本方法。它接受一个序列(如列表、元组)作为输入,并返回一个NumPy数组。

import numpy as np

# 从元组创建数组
arr = np.array((1, 2, 3, 4, 5))
print(arr)

输出结果:

[1 2 3 4 5]

使用np.zeros()np.ones()创建数组

np.zeros()np.ones()函数分别用于创建全零和全一的数组。这两个函数接受一个表示数组形状的元组作为参数。

import numpy as np

# 创建全零数组
zeros_arr = np.zeros((3, 4))
print(zeros_arr)

# 创建全一数组
ones_arr = np.ones((2, 3))
print(ones_arr)

输出结果:

[[0. 0. 0. 0.]
 [0. 0. 0. 0.]
 [0. 0. 0. 0.]]
[[1. 1. 1.]
 [1. 1. 1.]]

使用np.arange()创建数组

np.arange()函数类似于Python的range()函数,但返回的是一个NumPy数组。它接受起始值、结束值和步长作为参数。

import numpy as np

# 创建从0到9的数组
arr = np.arange(10)
print(arr)

# 创建从1到10,步长为2的数组
arr = np.arange(1, 10, 2)
print(arr)

输出结果:

[0 1 2 3 4 5 6 7 8 9]
[1 3 5 7 9]

使用np.linspace()创建数组

np.linspace()函数用于创建等间隔的数组。它接受起始值、结束值和元素个数作为参数。

import numpy as np

# 创建从0到1的5个等间隔数
arr = np.linspace(0, 1, 5)
print(arr)

输出结果:

[0.   0.25 0.5  0.75 1.  ]

使用np.random模块创建数组

NumPy的np.random模块提供了多种生成随机数组的函数。

import numpy as np

# 创建形状为(3, 3)的随机数组,元素值在[0, 1)之间
random_arr = np.random.random((3, 3))
print(random_arr)

# 创建形状为(2, 2)的随机整数数组,元素值在[0, 10)之间
random_int_arr = np.random.randint(0, 10, (2, 2))
print(random_int_arr)

输出结果:

[[0.12345678 0.23456789 0.34567891]
 [0.45678912 0.56789123 0.67891234]
 [0.78912345 0.89123456 0.91234567]]
[[3 7]
 [5 2]]

使用np.eye()创建单位矩阵

np.eye()函数用于创建单位矩阵(对角线元素为1,其余元素为0)。

import numpy as np

# 创建3x3的单位矩阵
identity_matrix = np.eye(3)
print(identity_matrix)

输出结果:

[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]

使用np.full()创建填充数组

np.full()函数用于创建指定形状和填充值的数组。

import numpy as np

# 创建形状为(2, 3),填充值为7的数组
full_arr = np.full((2, 3), 7)
print(full_arr)

输出结果:

[[7 7 7]
 [7 7 7]]

数组的属性

NumPy数组具有多个属性,可以帮助我们了解数组的形状、大小、数据类型等信息。

import numpy as np

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

# 数组的形状
print("Shape:", arr.shape)

# 数组的维度
print("Dimensions:", arr.ndim)

# 数组的大小(元素总数)
print("Size:", arr.size)

# 数组的数据类型
print("Data type:", arr.dtype)

输出结果:

Shape: (2, 3)
Dimensions: 2
Size: 6
Data type: int64

数组的形状操作

NumPy提供了多种方法来操作数组的形状,例如改变数组的形状、转置数组等。

import numpy as np

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

# 改变数组形状
reshaped_arr = arr.reshape(3, 2)
print("Reshaped array:\n", reshaped_arr)

# 转置数组
transposed_arr = arr.T
print("Transposed array:\n", transposed_arr)

# 展平数组
flattened_arr = arr.flatten()
print("Flattened array:", flattened_arr)

输出结果:

Reshaped array:
 [[1 2]
 [3 4]
 [5 6]]
Transposed array:
 [[1 4]
 [2 5]
 [3 6]]
Flattened array: [1 2 3 4 5 6]

数组的数据类型

NumPy数组的数据类型(dtype)决定了数组中元素的类型。NumPy支持多种数据类型,包括整数、浮点数、布尔值等。

import numpy as np

# 创建指定数据类型的数组
int_arr = np.array([1, 2, 3], dtype=np.int32)
float_arr = np.array([1.0, 2.0, 3.0], dtype=np.float64)

print("Integer array:", int_arr.dtype)
print("Float array:", float_arr.dtype)

输出结果:

Integer array: int32
Float array: float64

总结

本文详细介绍了如何使用NumPy创建数组,涵盖了从简单的列表转换到复杂的随机数组生成等多种方法。通过掌握这些基本技巧,您将能够高效地创建和操作NumPy数组,为后续的数据分析和科学计算打下坚实的基础。

NumPy是Python科学计算的核心库之一,掌握其基本操作对于从事数据分析、机器学习等领域的工作至关重要。希望本文能够帮助您更好地理解和使用NumPy数组。

推荐阅读:
  1. 如何在Python中使用numpy模块创建数组
  2. 如何在Python中遍历numpy数组

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python numpy

上一篇:gpio接口的作用是什么

下一篇:Java中缀表达式如何实现

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》