Olá Francisco, tudo bem por aí??
Vamos por partes:
O que é NumPy?
NumPy é uma biblioteca python usada para trabalhar com arrays ou na tradução, matrizes.
Ele também tem funções para trabalhar no domínio da álgebra linear, computação quântica, estatística, processamento de imagens e muitos outros campos, como pode observar aqui na documentação.
NumPy foi criado em 2005 por Travis Oliphant. É um projeto de código aberto e você pode usá-lo livremente, link pro github.
NumPy significa Numerical Python.
Por que usar o NumPy?
Em Python, temos listas que servem para o mesmo propósito de arrays, mas seu processamento é lento.
NumPy tem como objetivo fornecer um objeto de matriz que é até 50x mais rápido que as listas tradicionais do Python.
O objeto array em NumPy é chamado ndarray
, ele fornece várias funções de suporte que tornam o trabalho ndarray
muito fácil.
Os arrays são usados com muita frequência em ciência de dados, onde velocidade e recursos são muito importantes.
Data Science: é um ramo da ciência da computação onde estudamos como armazenar, usar e analisar dados para derivar informações deles.
Por que o NumPy é mais rápido que as listas?
Os arrays NumPy são armazenados em um local contínuo na memória, ao contrário das listas, de modo que os processos podem acessá-los e manipulá-los de maneira muito eficiente.
Esse comportamento é denominado localidade de referência em informática.
Esta é a principal razão pela qual o NumPy é mais rápido do que listas. Também é otimizado para funcionar com as arquiteturas de CPU mais recentes. Conforme referência Numpy
Espero ter te ajudado e qualquer dúvida é só voltar aqui =)
Bons estudos Francisco!