Боитесь математики? Не раз пытались решить задачки по математике с помощью технологий? Не вы одни. Сегодня в Python можно решить почти все математические задачи. В данной статье мы рассмотрим способы имплементации различных математических операций в Python.
Содержание статьи
- Python библиотеки для математики
- Библиотека Math в Python
- Библиотека Numpy в Python
- Библиотека SciPy в Python
- Библиотека Statsmodel в Python
- Scikit-learn в Python
Python является универсальным языком, который используется в процессе веб-разработки создания сайта, работе с базами данных и научными вычислениями. В данном руководстве будет рассмотрено, как математические библиотеки Python повлияли на научные вычисления.
Итак, давайте разберем самые популярные математические библиотеки Python.
Python библиотеки для математики
Python стал очень популярным из-за обилия библиотек. Каждая библиотека ориентирована на разработку приложений и решений всех проблем, что могут возникнуть во время процесса. Математические операции удобно выполняются в Python из-за его внимания к минимализму в сочетании с полезностью. Для математических операций в Python есть сразу несколько библиотек.
Библиотека Math в Python
Math является самым базовым математическим модулем Python. Охватывает основные математические операции, такие как сумма, экспонента, модуль и так далее. Эта библиотека не используется при работе со сложными математическими операциями, такими как умножение матриц. Расчеты, выполняемые с помощью функций библиотеки math, также выполняются намного медленнее. Тем не менее, эта библиотека подходит для выполнения основных математических операций.
Пример: Вы можете найти экспоненту от 3, используя функцию exp()
библиотеки math следующим образом:
1 2 |
from math import exp exp(3) # Вычисление экспоненты |
Библиотека Numpy в Python
Библиотека Numpy в Python широко используется для выполнения математических операций с матрицами. Наиболее важной особенностью Numpy, которая отличает его от других библиотек, является способность выполнять вычисления на молниеносной скорости. Это возможно благодаря C-API, который позволяет пользователю быстро получать результаты.
Например, вы можете реализовать скалярное произведение двух матриц следующим образом:
1 2 3 4 5 6 |
import numpy as np mat1 = np.array([[1,2],[3,4]]) mat2 = np.array([[5,6],[7,8]]) np.dot(mat1,mat2) |
Результат:
1 2 |
array([[19, 22], [43, 50]]) |
Библиотека SciPy в Python
Библиотека math предоставляется Python научные инструменты. В ней есть различные модели для математической оптимизации, линейной алгебры, Преобразования Фурье и так далее. Модуль numpy предоставляет базовую структуру данных массива библиотеке SciPy.
В качестве примера используем функцию linalg()
, предоставленную библиотекой SciPy, для вычисления детерминанта квадратной матрицы.
1 2 3 4 5 6 |
from scipy import linalg import numpy as np mat1 = np.array([[1,2],[3,4]]) #DataFlair linalg.det(mat1) # Результат: -2.0 |
Библиотека Statsmodel в Python
С помощью пакета Statsmodel можно выполнять статистические вычисления, которые включают в себя описательную статистику, логический вывод, а также оценку для различных статистических моделей. Это способствует эффективному статистическому исследованию данных.
Ниже приведен пример реализации библиотеки Statsmodel в Python.
1 2 3 4 5 6 7 8 9 |
import numpy as np import statsmodels.api as sm import statsmodels.formula.api as smf input_data = sm.datasets.get_rdataset("Guerry", "HistData").data res = smf.ols('Lottery ~ Literacy + np.log(Pop1831)', data = input_data).fit() print(res.summary()) |
Scikit-learn в Python
Машинное обучение является важным математическим аспектом науки о данных. Используя различные инструменты машинного обучения, вы можете легко классифицировать данные и прогнозировать результаты. Для этой цели Scikit-learn предлагает различные функции, упрощающие методы классификации, регрессии и кластеризации.
1 2 3 4 5 6 7 8 9 |
from sklearn import linear_model regress = linear_model.LinearRegression() regress.fit([[0,0],[1,1],[2,2]], [0,1,2]) LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None, normalize=False) print(regress.coef_) # Результат: array([0.5, 0.5]) |
Заключение
В данной статье мы рассмотрели важные математические библиотеки Python. Были рассмотрены NumPy, SciPy, statsmodels, а также scikit-learn. В Python есть и другие математические библиотеки, многие находятся в процессе разработки. Надеемся, что определенные моменты руководства вам пригодятся в будущем.
Являюсь администратором нескольких порталов по обучению языков программирования Python, Golang и Kotlin. В составе небольшой команды единомышленников, мы занимаемся популяризацией языков программирования на русскоязычную аудиторию. Большая часть статей была адаптирована нами на русский язык и распространяется бесплатно.
E-mail: vasile.buldumac@ati.utm.md
Образование
Universitatea Tehnică a Moldovei (utm.md)
- 2014 — 2018 Технический Университет Молдовы, ИТ-Инженер. Тема дипломной работы «Автоматизация покупки и продажи криптовалюты используя технический анализ»
- 2018 — 2020 Технический Университет Молдовы, Магистр, Магистерская диссертация «Идентификация человека в киберпространстве по фотографии лица»