NumPy教程

NumPy是Python中用于科学计算的基础库之一。它提供了高效的多维数组对象(ndarray)、用于数组计算的函数以及用于读写磁盘上基于数组的数据集的工具。本教程将介绍NumPy的基本概念和用法。

安装NumPy

在使用NumPy之前,需要先安装它。可以使用pip命令进行安装:

pip install numpy

NumPy数组

NumPy的核心是ndarray对象,它是一个多维数组。ndarray对象可以是一维数组、二维数组或更高维数组。以下是创建ndarray对象的几种方法:

从Python列表创建ndarray对象

可以使用numpy.array()函数从Python列表创建ndarray对象。例如,以下代码创建了一个一维数组:

import numpy as np

a = np.array([1, 2, 3])
print(a)

输出:

[1 2 3]

可以使用ndarray.shape属性获取数组的形状:

print(a.shape)

输出:

(3,)

这表示数组有3个元素。

可以使用ndarray.dtype属性获取数组的数据类型:

print(a.dtype)

输出:

int64

这表示数组的元素类型为64位整数。

可以使用ndarray.ndim属性获取数组的维度:

print(a.ndim)

输出:

1

这表示数组是一维的。

可以使用ndarray.size属性获取数组的元素个数:

print(a.size)

输出:

3

这表示数组有3个元素。

可以使用ndarray.itemsize属性获取数组的每个元素的字节数:

print(a.itemsize)

输出:

8

这表示数组的每个元素占用8个字节。

可以使用ndarray.data属性获取数组的内存地址:

print(a.data)

输出:


从Python元组创建ndarray对象

可以使用numpy.array()函数从Python元组创建ndarray对象。例如,以下代码创建了一个二维数组:

import numpy as np

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

输出:

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

可以使用ndarray.shape属性获取数组的形状:

print(a.shape)

输出:

(2, 3)

这表示数组有2行3列。

可以使用ndarray.dtype属性获取数组的数据类型:

print(a.dtype)

输出:

int64

这表示数组的元素类型为64位整数。

可以使用ndarray.ndim属性获取数组的维度:

print(a.ndim)

输出:

2

这表示数组是二维的。

可以使用ndarray.size属性获取数组的元素个数:

print(a.size)

输出:

6

这表示数组有6个元素。

可以使用ndarray.itemsize属性获取数组的每个元素的字节数:

print(a.itemsize)

输出:

8

这表示数组的每个元素占用8个字节。

可以使用ndarray.data属性获取数组的内存地址:

print(a.data)

输出:


使用NumPy函数创建ndarray对象

NumPy提供了许多函数用于创建ndarray对象。以下是一些常用的函数:

  • numpy.zeros(shape, dtype=float, order='C'):创建一个指定形状和数据类型的全0数组。
  • numpy.ones(shape, dtype=float, order='C'):创建一个指定形状和数据类型的全1数组。
  • numpy.empty(shape, dtype=float, order='C'):创建一个指定形状和数据类型的空数组,其元素值未初始化。
  • numpy.arange([start,] stop[, step,], dtype=None):创建一个指定范围和步长的一维数组。
  • numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None):创建一个指定范围和元素个数的一维数组。

例如,以下代码创建了一个全0数组:

import numpy as np

a = np.zeros((2, 3))
print(a)

输出:

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

可以使用numpy.ones()numpy.empty()函数创建全1数组和空数组。

例如,以下代码创建了一个一维数组:

import numpy as np

a = np.arange(10)
print(a)

输出:

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

可以使用numpy.linspace()函数创建等间隔的一维数组。

例如,以下代码创建了一个一维数组:

import numpy as np

a = np.linspace(0, 1, 5)
print(a)

输出:

[0.   0.25 0.5  0.75 1.  ]

NumPy数组的运算

NumPy数组支持各种数学运算,例如加、减、乘、除等。以下是一些常用的运算:

数组加法

可以使用+运算符进行数组加法。例如,以下代码将两个数组相加:

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = a + b
print(c)

输出:

[5 7 9]

数组减法

可以使用-运算符进行数组减法。例如,以下代码将两个数组相减:

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = a - b
print(c)

输出:

[-3 -3 -3]

数组乘法

可以使用*运算符进行数组乘法。例如,以下代码将两个数组相乘:

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = a * b
print(c)

输出:

[ 4 10 18]

数组除法

可以使用/运算符进行数组除法。例如,以下代码将两个数组相除:

import numpy as np

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = a / b
print(c)

输出:

[0.25 0.4  0.5 ]

数组求幂

可以使用**运算符进行数组求幂。例如,以下代码将一个数组的每个元素求平方:

import numpy as np

a = np.array([1, 2, 3])
b = a ** 2
print(b)

输出:

[1 4 9]

你可能感兴趣的:(numpy,python,数据分析)