O uso da biblioteca NumPy para começar com o aprendizado de máquina Python - tutorial de compartilhamento gratuito Python desde o início até o domínio 30 dias para aprender rapidamente Tutorial em vídeo do Python

Diretório de artigos da série

Capítulo 1 Uso da biblioteca Pandas para começar a usar o aprendizado de máquina Python

Capítulo 2 Uso da biblioteca NumPy para introdução ao Python Machine Learning

Capítulo 2 Criação, Indexação, Divisão, Limpeza de Dados, Análise de Dados, etc. de Séries e DataFrame para Introdução ao
Aprendizado de Máquina Python Capítulo 2 Visualização de Dados para Introdução ao Aprendizado de Máquina Python
Capítulo 2 Algoritmos de Aprendizado de Máquina para Introdução ao Aprendizado de Máquina Python
Capítulo 2 Python Máquina Projetos práticos para começar



insira a descrição da imagem aqui

prefácio

O NumPy é uma importante biblioteca de computação científica em Python. Ele fornece objetos de array multidimensionais eficientes e várias funções matemáticas, que podem facilitar cálculos vetorizados e operações de array. No aprendizado de máquina, o NumPy é frequentemente usado para processamento e pré-processamento de dados para se preparar para o treinamento e avaliação subsequentes do modelo. Este artigo apresentará as operações e métodos básicos da biblioteca NumPy, incluindo a criação e operação de arrays, funções comuns, mecanismo de transmissão, geração de números aleatórios, operações de arquivo, operações de álgebra linear, etc. Espero que possa ajudar os leitores a entender melhor o uso do NumPy e fornecer ajuda para aprendizado de máquina e análise de dados.

1. Introdução à biblioteca NumPy

O NumPy é uma importante biblioteca de computação científica em Python. Ele fornece objetos de array multidimensionais eficientes e várias funções matemáticas, que podem facilitar cálculos vetorizados e operações de array. As principais funções do NumPy incluem a criação e operação de arrays, estatísticas e cálculos de arrays, classificação e busca de arrays, geração de números aleatórios, operações de arquivo, operações de álgebra linear, etc.

O papel da biblioteca NumPy

A principal função da biblioteca NumPy é fornecer objetos de matriz multidimensionais eficientes e várias funções matemáticas, que podem facilitar cálculos vetorizados e operações de matriz. O objeto de matriz do NumPy pode armazenar qualquer tipo de dados, incluindo inteiros, números de ponto flutuante, números complexos, valores booleanos, etc., e pode executar operações matemáticas básicas, operações lógicas, operações de comparação, etc.

Instalação da biblioteca NumPy

Antes de instalar a biblioteca NumPy, você precisa primeiro instalar o ambiente Python. A biblioteca NumPy pode ser instalada com o seguinte comando:

Copiar pip instalar numpy

2. Criação e manipulação de arrays NumPy

A matriz NumPy é a estrutura de dados mais importante da biblioteca NumPy. É um objeto de matriz multidimensional que pode armazenar qualquer tipo de dados. A criação e manipulação de arrays NumPy inclui os seguintes aspectos:

Criar matrizes NumPy

Você pode usar a função array() da biblioteca NumPy para criar uma matriz NumPy ou pode usar outras funções para criar um tipo específico de matriz, como a função zeros() para criar uma matriz de todos os zeros, os uns( ) para criar um array de todos, e a função empty() para criar um array vazio wait.

Propriedades das matrizes NumPy

Os atributos de uma matriz NumPy incluem a forma, tipo de dados, dimensão, número de elementos, etc. da matriz. Você pode usar o atributo shape para obter a forma do array, o atributo dtype para obter o tipo de dados do array, o atributo ndim para obter a dimensão do array e o atributo size para obter o número de elementos no array , etc

Indexação e divisão de matrizes NumPy

A indexação e divisão de matrizes NumPy são semelhantes às listas Python, e os elementos da matriz podem ser obtidos usando indexação inteira, divisão, indexação booleana, etc. Dois pontos (:) podem ser usados ​​para indicar um intervalo de fatias e uma matriz booleana pode ser usada para indicar um índice condicional.

Operações em matrizes NumPy

As matrizes NumPy suportam operações matemáticas básicas, operações lógicas, operações de comparação, etc., e você pode usar várias funções na biblioteca NumPy para executar operações de matriz. As operações em matrizes NumPy incluem operações em nível de elemento, operações de matriz e operações de transmissão.

import numpy as np

# 创建一维数组
a = np.array([1, 2, 3])
print(a)

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

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

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

# 创建空数组
e = np.empty((2, 

insira a descrição da imagem aqui

3. Funções comuns do NumPy

A biblioteca NumPy fornece uma grande variedade de funções e métodos, que podem executar facilmente operações de forma de matriz, operações de elemento de matriz, cálculos estatísticos de matriz, classificação e pesquisa de matriz, etc. As funções comumente usadas incluem os seguintes aspectos:

Funções de manipulação de forma de matriz

As funções de manipulação de forma de array incluem reshape(), flatten(), transpose(), swapaxes(), etc., que podem alterar facilmente a forma e a dimensão de um array.

Funções de Manipulação de Elementos de Array

As funções de operação de elemento de matriz incluem função sum(), função mean(), função std(), função var(), etc., que podem executar convenientemente cálculos estatísticos de elementos de matriz.

Funções Estatísticas de Matriz

As funções estatísticas de matriz incluem função min(), função max(), função argmin(), função argmax(), etc., que podem executar cálculos estatísticos e pesquisa de elementos de matriz de maneira conveniente.

Função de classificação de matriz

As funções de classificação de array incluem função sort(), função argsort(), função lexsort(), função searchsorted(), etc., que podem convenientemente classificar e pesquisar elementos de array.
Funções de manipulação de forma de matriz

As funções de manipulação de forma de array incluem reshape(), flatten(), transpose(), swapaxes(), etc., que podem alterar facilmente a forma e a dimensão de um array.

复制import numpy as np

# reshape函数改变数组形状
a = np.array([[1, 2], [3, 4], [5, 6]])
b = a.reshape((2, 3))
print(b)

# flatten函数将多维数组转换为一维数组
c = np.array([[1, 2], [3, 4], [5, 6]])
d = c.flatten()
print(d)

# transpose函数将数组进行转置
e = np.array([[1, 2], [3, 4], [5, 6]])
f = e.transpose()
print(f)

# swapaxes函数交换数组的两个轴
g = np.array([[1, 2], [3, 4], [5, 6]])
h = np.swapaxes(g, 0, 1)
print(h)

数组元素操作函数

数组元素操作函数包括sum()函数、mean()函数、std()函数、var()函数等,可以方便地进行数组元素的统计计算。

# sum函数计算数组元素的和
a = np.array([1, 2, 3])
b = np.sum(a)
print(b)

# mean函数计算数组元素的平均值
c = np.array([1, 2, 3])
d = np.mean(c)
print(d)

# std函数计算数组元素的标准差
e = np.array([1, 2, 3])
f = np.std(e)
print(f)

# var函数计算数组元素的方差
g = np.array([1, 2, 3])
h = np.var(g)
print(h)

Funções Estatísticas de Matriz

As funções estatísticas de matriz incluem função min(), função max(), função argmin(), função argmax(), etc., que podem executar cálculos estatísticos e pesquisa de elementos de matriz de maneira conveniente.

复制import numpy as np

# min函数计算数组元素的最小值
a = np.array([1, 2, 3])
b = np.min(a)
print(b)

# max函数计算数组元素的最大值
c = np.array([1, 2, 3])
d = np.max(c)
print(d)

# argmin函数查找数组元素的最小值的索引
e = np.array([1, 2, 3])
f = np.argmin(e)
print(f)

# argmax函数查找数组元素的最大值的索引
g = np.array([1, 2, 3])
h = np.argmax(g)
print(h)

Função de classificação de matriz

As funções de classificação de array incluem função sort(), função argsort(), função lexsort(), função searchsorted(), etc., que podem convenientemente classificar e pesquisar elementos de array.

复制import numpy as np

# sort函数对数组元素进行排序
a = np.array([3, 1, 2])
b = np.sort(a)
print(b)

# argsort函数返回数组元素排序后的索引
c = np.array([3, 1, 2])
d = np.argsort(c)
print(d)

# lexsort函数对多个数组进行排序
e = np.array([3, 1, 2])
f = np.array([1, 2, 3])
g = np.lexsort((e, f))
print(g)

# searchsorted函数在有序数组中查找元素的插入位置
h = np.array([1, 2, 3])
i = np.searchsorted(h, 2)
print

4. Mecanismo de transmissão NumPy

O mecanismo de transmissão é um recurso muito importante no NumPy, que permite operações em matrizes de diferentes formas sem conversões explícitas de formas. A aplicação do mecanismo de transmissão pode simplificar bastante o código das operações de matriz e melhorar a eficiência do código.

O conceito do mecanismo de transmissão

O mecanismo de transmissão significa que, quando o NumPy executa operações de array, ele expande automaticamente os arrays de diferentes formas para que tenham a mesma forma e, em seguida, executa as operações. As regras do mecanismo de transmissão incluem dois aspectos: Primeiro, NumPy irá comparar as formas das duas matrizes uma a uma a partir do final. Se as formas das duas matrizes forem iguais ou a forma de uma das matrizes for 1, elas são considerados capazes de transmitir; em segundo lugar, o NumPy expandirá automaticamente uma matriz de forma 1 para ter a mesma forma de outra matriz.

Aplicação do mecanismo de transmissão

A aplicação do mecanismo de transmissão inclui adição, subtração, multiplicação e divisão de arrays, operações de comparação de arrays, operações lógicas de arrays, etc. Ao executar operações de matriz, você pode usar o mecanismo de transmissão para simplificar o código e melhorar a eficiência do código.

Cinco, geração de números aleatórios NumPy

A biblioteca NumPy fornece uma grande variedade de funções de geração de números aleatórios, que podem gerar facilmente vários tipos de números aleatórios. A função de geração de números aleatórios inclui os seguintes aspectos:

gerador de números aleatórios

As funções de geração de números aleatórios incluem função rand(), função randn(), função randint(), função uniform(), função normal(), etc., que podem facilmente gerar vários tipos de números aleatórios.
A biblioteca NumPy fornece uma variedade de funções de geração de números aleatórios, incluindo geração de números inteiros aleatórios, geração de números de ponto flutuante aleatórios, geração de matrizes aleatórias e muito mais. Essas funções podem facilmente gerar números aleatórios de acordo com uma distribuição específica, o que pode ser útil para simulação e experimentação.

import numpy as np

# randint函数生成指定范围内的随机整数
a = np.random.randint(0, 10, size=(3, 3))
print(a)

gerar número inteiro aleatório

Inteiros aleatórios dentro de um intervalo especificado podem ser gerados usando a função random.randint() da biblioteca NumPy.
Gerar números aleatórios de ponto flutuante

Você pode usar a função random.rand() da biblioteca NumPy para gerar números aleatórios de ponto flutuante de uma forma especificada ou pode usar a função random.randn() para gerar números aleatórios de ponto flutuante que estejam em conformidade com o padrão normal distribuição.

semente de número aleatório

A semente de número aleatório refere-se ao estado inicial do gerador de número aleatório, e a geração de números aleatórios pode ser controlada definindo a semente de número aleatório. A semente do número aleatório pode ser definida usando a função random.seed() da biblioteca NumPy.

import numpy as np

# rand函数生成指定形状的随机浮点数
a = np.random.rand(3, 3)
print(a)

# randn函数生成符合标准正态分布的随机浮点数
b = np.random.randn(3, 3)
print(b)

gerar semente aleatória

As sementes aleatórias podem ser geradas usando a função random.seed() da biblioteca NumPy para controlar a geração de números aleatórios.

import numpy as np

# seed函数生成随机种子
np.random.seed(0)
a = np.random.rand(3, 3)
print(a)

Seis, operações de arquivo NumPy

insira a descrição da imagem aqui

A biblioteca NumPy fornece uma grande variedade de funções de manipulação de arquivos que podem facilmente ler e gravar vários tipos de arquivos. As funções de operação de arquivo incluem os seguintes aspectos:

ler arquivo de texto

Você pode usar a função loadtxt(), função genfromtxt(), função fromfile(), etc. da biblioteca NumPy para ler dados em arquivos de texto.

import numpy as np

# 从CSV文件中读取数组数据
a = np.genfromtxt('data.csv', delimiter=',')
print(a)

# 将数组数据保存到CSV文件中
b = np.array([[1, 2], [3, 4]])
np.savetxt('data.csv', b, delimiter=',')

ler arquivo binário

Você pode usar a função load(), função loadtxt(), função fromfile(), etc. da biblioteca NumPy para ler os dados no arquivo binário.

import numpy as np

# 保存数组数据到文件中
a = np.array([[1, 2], [3, 4]])
np.save('data.npy', a)

# 从文件中读取数组数据
b = np.load('data.npy')
print(b)

gravar em arquivo de texto

Os dados podem ser gravados em arquivos de texto usando a função savetxt(), tofile(), etc. da biblioteca NumPy.

import numpy as np

# 保存数组数据到文本文件中
a = np.array([[1, 2], [3, 4]])
np.savetxt('data.txt', a)

# 从文本文件中读取数组数据
b = np.loadtxt('data.txt')
print(b)

escrever arquivo binário

Os dados podem ser gravados em arquivos binários usando a função save(), função savez(), etc. da biblioteca NumPy.

Seven, as operações de álgebra linear do NumPy

A biblioteca NumPy fornece uma variedade de funções de operação de álgebra linear, que podem facilitar a criação de matrizes, operação de matrizes e decomposição de matrizes. As funções de operação de álgebra linear incluem os seguintes aspectos:
A biblioteca NumPy fornece uma variedade de funções de operação de álgebra linear, incluindo multiplicação de matriz, inversão de matriz, determinante de matriz, autovalor e autovetor, etc. Essas funções podem executar convenientemente operações de álgebra linear e fornecer assistência para análise de dados e treinamento de modelo.

multiplicação da matriz

A multiplicação de matrizes pode ser executada usando a função dot() da biblioteca NumPy.

import numpy as np

# 矩阵乘法运算
def matrix_multiply(a, b):
    c = np.dot(a, b)
    return c

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

Criação e manipulação de matrizes

Você pode usar a função mat() e a função array() da biblioteca NumPy para criar objetos de matriz e pode usar o atributo T, o atributo H etc. para executar operações como transposição e conjugação de matriz.
inversão de matriz

O inverso de uma matriz pode ser encontrado usando a função inv() da biblioteca NumPy.

import numpy as np

# 求解矩阵的逆矩阵
def matrix_inverse(a):
    b = np.linalg.inv(a)
    return b

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

operações de matriz

Você pode usar a função dot(), a função multiple(), a função inv(), a função solve() etc. da biblioteca NumPy para realizar operações como multiplicação de matrizes, multiplicação em nível de elemento, inversão de matrizes e resolução de matrizes.

Decomposição de matriz

Você pode usar a função eig(), função svd(), função qr(), etc. da biblioteca NumPy para executar decomposição de valor próprio, decomposição de valor singular, decomposição QR, etc. da matriz. determinante da matriz

O determinante de uma matriz pode ser calculado usando a função det() da biblioteca NumPy.

import numpy as np

# 计算矩阵的行列式
def matrix_determinant(a):
    b = np.linalg.det(a)
    return b

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

Siga-me e compartilhe materiais de aprendizagem em toda a rede

8. Resumo e Perspectivas

A biblioteca NumPy é uma biblioteca de computação científica muito importante em Python. Ela fornece objetos de array multidimensionais eficientes e várias funções matemáticas, que podem facilitar cálculos vetorizados e operações de array. Este artigo apresenta as operações e métodos básicos da biblioteca NumPy, incluindo a criação e operação de arrays, funções comuns, mecanismo de transmissão, geração de números aleatórios, operações de arquivo, operações de álgebra linear, etc. A vantagem da biblioteca NumPy é que ela fornece operações de matriz eficientes e funções matemáticas que facilitam a computação científica e a análise de dados. No futuro, com o desenvolvimento da ciência de dados e da inteligência artificial, a perspectiva de aplicação da biblioteca NumPy será mais ampla.
Compartilhamento de disco de rede
Python desde a entrada até a proficiência em 30 dias para aprender rapidamente o tutorial em vídeo do Python
Link: https://pan.baidu.com/s/19FeaVPN_F0scxYR24e1MCg?pwd=c8qz
Código de extração: c8qz

Acho que você gosta

Origin blog.csdn.net/CDB3399/article/details/130650487
Recomendado
Clasificación