Registros – NumPy Ufunc
Os logs ufunc do NumPy referem-se ao logaritmo natural dos elementos da matriz de entrada calculados usando as funções universais do NumPy (ufuncs).
O objetivo deste artigo é guiá-lo pelos logs NumPy Ufunc e como você pode usá-los em computação científica e análise de dados.
Logs Ufunc NumPy
Em termos de logs Numpy Ufunc, NumPy fornece uma variedade de funções que você pode utilizar para gerar logs na base 2, e e 10.
Como parte de nossa discussão, também veremos como podemos implementar um Ufunc personalizado para obter logs de qualquer base.
Quando um log não pode ser calculado, todas as funções de log incluirão -inf ou inf na saída.
Base 2 Registros
Para calcular um log na base 2, utilize a função log2() .
No array mrx_arr abaixo, recupere o log na base 2 de cada um dos dígitos:
Example:
Com a função organize() defina o intervalo das duas matrizes, encontre o valor de log da matriz na base 2 e aplique a função add() :
Example:
Base 10 Registros
Se você estiver procurando por logs Numpy Ufunc, poderá utilizar a função log10() para registrar os dados no nível de base 10.
Utilizando a matriz mrx_arr abaixo, calcule o log na base 10 de cada um dos dígitos da seguinte maneira:
Example:
A função organize() define o intervalo das duas matrizes, calcula o valor de log da matriz na base 10 e executa a função add():
Example:
Base E Registros
Você pode calcular o log na base e chamando a função log() .
Utilizando o seguinte array, confira o log na base e de todos os itens:
Example:
Calcule a soma de mrx_arr e ample_arr após implementar as funções organize() e log() :
Example:
Log em qualquer base
Não há nenhuma função no NumPy que possa manipular o log em qualquer base, então podemos chamar a função frompyfunc() em conjunto com a função interna math.log() com dois parâmetros de entrada e um parâmetro de retorno:
Implemente a função frompyfunc() :
Example:
Aplique a função add() junto com a função frompyfunc():
Example:
Exemplo de Explicação
1 – A função log() é importada do módulo math.
2 – Dois ufuncs são criados usando numpy.frompyfunc() . Ambos mrx_log e ample_log são criados para receber dois argumentos de entrada e retornar uma matriz com uma única saída. A função log() é especificada como a função a ser aplicada por esses ufuncs.
3 – A função numpy.add() é chamada com dois argumentos:
- O resultado da aplicação do mrx_log ufunc aos valores escalares 25 e 5.
- O resultado da aplicação de ample_log ufunc aos valores escalares 11 e 19.
A função numpy.add() adiciona os dois arrays resultantes elemento a elemento para produzir um único array de saída.
4 – A saída do código é o array produzido por numpy.add() .
Benefícios dos logs NumPy Ufunc
O uso de logs ufunc NumPy tem vários benefícios, incluindo:
- Os logs NumPy ufunc são implementados em C e otimizados para execução rápida, tornando-os muito mais rápidos do que executar as mesmas operações em Python puro.
- Os logs NumPy ufunc operam em elementos em arrays, permitindo o uso eficiente da memória, evitando a necessidade de loops e arrays temporários.
- Ele permite operações vetorizadas, que podem realizar cálculos em arrays inteiros de uma só vez, facilitando a escrita de código conciso e legível.
- É compatível com uma ampla gama de outras bibliotecas de computação científica, tornando-as uma ferramenta versátil para análise de dados e pesquisa científica.
- Os logs NumPy ufunc fornecem resultados de alta precisão para cálculos matemáticos, tornando-os adequados para aplicações científicas complexas que exigem resultados precisos.