SciPy
![]() | |
![]() PSD of ECG using SciPy | |
Original author(s) | Travis Oliphant, Pearu Peterson, Eric Jones |
---|---|
Developer(s) | Community library project |
Initial release | Around 2001 |
Stable release | 1.11.1
/ 28 June 2023 |
Repository | |
Written in | Python, Fortran, C, C++[1] |
Operating system | Cross-platform |
Type | Technical computing |
License | BSD-new license |
Website | scipy![]() |
SciPy (pronounced /ˈsaɪpaɪ/ "sigh pie"[2]) is a free and open-source Python library used for scientific computing and technical computing.[3]
SciPy contains modules for optimization, linear algebra, integration, interpolation, special functions, FFT, signal and image processing, ODE solvers and other tasks common in science and engineering.
SciPy is also a family of conferences for users and developers of these tools: SciPy (in the United States), EuroSciPy (in Europe) and SciPy.in (in India).[4] Enthought originated the SciPy conference in the United States and continues to sponsor many of the international conferences as well as host the SciPy website.
The SciPy library is currently distributed under the BSD license, and its development is sponsored and supported by an open community of developers. It is also supported by NumFOCUS, a community foundation for supporting reproducible and accessible science.
Components[edit]
The SciPy package is at the core of Python's scientific computing capabilities. Available sub-packages include:
- cluster: hierarchical clustering, vector quantization, K-means
- constants: physical constants and conversion factors
- fft : дискретного преобразования Фурье алгоритмы
- fftpack : устаревший интерфейс для дискретных преобразований Фурье.
- интегрировать : численного интегрирования процедуры
- interpolate : инструменты интерполяции
- io : ввод и вывод данных
- linalg : процедуры линейной алгебры
- разное : разные утилиты (например, примеры изображений)
- ndimage : различные функции для обработки многомерных изображений.
- ODR: ортогональной дистанционной регрессии классы и алгоритмы
- оптимизировать : алгоритмы оптимизации, включая линейное программирование.
- сигнал : обработки сигналов инструменты
- разреженный : разреженные матрицы и связанные алгоритмы
- пространственный : алгоритмы для пространственных структур, таких как деревья kd , ближайшие соседи, выпуклые оболочки и т. д.
- специальный : специальные функции
- статистика : статистические функции
- weave : инструмент для написания кода C / C++ в виде многострочных строк Python (теперь устарел в пользу Cython [5] )
![](http://upload.wikimedia.org/wikipedia/commons/thumb/5/54/Scipy_source.png/220px-Scipy_source.png)
Структуры данных [ править ]
Базовая структура данных, используемая SciPy, представляет собой многомерный массив , предоставляемый модулем NumPy . NumPy предоставляет некоторые функции для линейной алгебры, преобразования Фурье и генерации случайных чисел , но не обладает общностью эквивалентных функций в SciPy. NumPy также можно использовать как эффективный многомерный контейнер данных с произвольными типами данных . Это позволяет NumPy легко и быстро интегрироваться с самыми разными базами данных . В более старых версиях SciPy в качестве типа массива использовался Numeric, который теперь устарел в пользу нового кода массива NumPy. [6]
История [ править ]
В 1990-х годах Python был расширен за счет включения типа массива для числовых вычислений под названием Numeric. (Этот пакет в конечном итоге был заменен NumPy , который был написан Трэвисом Олифантом в 2006 году как смесь Numeric и Numarray, а сам Numarray был запущен в 2001 году.) По состоянию на 2000 год наблюдался рост числа модулей расширения и возрастающий интерес к создание полноценной среды для научных и технических вычислений. В 2001 году Трэвис Олифант, Эрик Джонс и Пиру Петерсон объединили написанный ими код и назвали получившийся пакет SciPy. Недавно созданный пакет предоставил стандартный набор общих числовых операций поверх структуры данных числового массива. Вскоре после этого Фернандо Перес выпустил IPython , улучшенную интерактивную оболочку, широко используемую в сообществе технических вычислений, а Джон Хантер выпустил первую версию Matplotlib , библиотеки 2D-графики для технических вычислений. С тех пор среда SciPy продолжала расширяться благодаря появлению новых пакетов и инструментов для технические вычисления . [7] [8] [9]
Научный против ScientificPython Python
В научной литературе SciPy иногда называют «Научным Python (SciPy)». Это неверно: официальное название проекта — просто «SciPy».
Кроме того, расширение «SciPy» как «Научный Python» может привести к путанице с «ScientificPython», проектом под руководством Конрада Хинсена из Орлеанского университета, который действовал с 1995 года. [10] и 2014. [11]
См. также [ править ]
- Сравнение программного обеспечения для численного анализа
- Список программного обеспечения для численного анализа
- Сравнение статистических пакетов
- SageMath
- Программа оптимизации HiGHS
Примечания [ править ]
- ^ Команда SciPy. «Как SciPy может быть быстрым, если он написан на интерпретируемом языке, таком как Python?» . Проверено 11 апреля 2022 г.
- ^ https://scipy.org/ «SciPy (произносится как «Вздыхающий пирог»)»
- ^ Паули Виртанен; Ральф Гоммерс; Трэвис Э. Олифант ; и другие. (3 февраля 2020 г.). «SciPy 1.0: фундаментальные алгоритмы научных вычислений на Python» (PDF) . Природные методы . 17 (3): 261–272. arXiv : 1907.10121 . дои : 10.1038/S41592-019-0686-2 . ISSN 1548-7091 . ПМК 7056644 . ПМИД 32015543 . Викиданные Q84573952 .
{{cite journal}}
:|author35=
имеет общее имя ( справка ) CS1 maint: числовые имена: список авторов ( ссылка ) (опечатка) - ^ «Предстоящие конференции SciPy 2023» . Конференции SciPy . Проверено 11 мая 2023 г.
- ^ «Примечания к выпуску SciPy 0.15.0 — Справочное руководство SciPy v1.6.2» . docs.scipy.org . Проверено 13 апреля 2021 г.
- ^ «Домашняя страница NumPy» .
- ^ «История SciPy» .
- ^ «Руководство по NumPy» (PDF) .
- ^ «Python для ученых и инженеров» .
- ^ «Научный Питон» . Проверено 21 февраля 2019 г.
- ^ «Источник: ScientificPython: Project Home» . sourceup.renater.fr . Проверено 21 февраля 2019 г.
Дальнейшее чтение [ править ]
- Нуньес-Иглесиас, Хуан; ван дер Вальт, Стефан; Дашну, Харриет (2017). Элегантный SciPy: искусство научного Python . О'Рейли. ISBN 978-1-4919-2287-3 .
Внешние ссылки [ править ]
- Кроссплатформенное программное обеспечение
- Бесплатное научное программное обеспечение
- Программное обеспечение для численного анализа для Linux
- Программное обеспечение для численного анализа для macOS
- Программное обеспечение для численного анализа для Windows
- Языки числового программирования
- Научные библиотеки Python (язык программирования)
- Программное обеспечение, использующее лицензию BSD