Возможности языка Julia для обработки статистических данных

Обложка

Цитировать

Полный текст

Аннотация

Язык программирования Julia является специализированным языком для научных вычислений. Язык сравнительно новый, поэтому большинство библиотек для него находится в активной стадии разработки. В статье авторы рассматривают возможности применения языка в области математической статистики. Особый акцент делается на технической составляющей, в частности подробно описывается процесс установки и настройки программного окружения. Так как пользователи языка Julia зачастую не являются профессиональными программистами, технические моменты в настройке программного окружения могут вызывать у них трудности, препятствующие быстрому освоению базовых возможностей языка. В статье описываются некоторые особенности Julia, которые отличают его от других популярных языков, используемых для научных вычислений. Также даётся обзор двух основных библиотек для математической статистики. Упор опять-таки делается на технической стороне, чтобы дать читателю представление об общих возможностях языка в области математической статистики.

Об авторах

М. Н. Геворкян

Российский университет дружбы народов

Email: gevorkyan-mn@rudn.ru
ORCID iD: 0000-0002-4834-4895

Docent, Candidate of Sciences in Physics and Mathematics, Associate Professor of Department of Applied Probability and Informatics

ул. Миклухо-Маклая, д. 6, Москва, 117198, Россия

А. В. Королькова

Российский университет дружбы народов

Email: korolkova-av@rudn.ru
ORCID iD: 0000-0001-7141-7610

Docent, Candidate of Sciences in Physics and Mathematics, Associate Professor of Department of Applied Probability and Informatics

ул. Миклухо-Маклая, д. 6, Москва, 117198, Россия

Д. С. Кулябов

Российский университет дружбы народов; Объединённый институт ядерных исследований

Автор, ответственный за переписку.
Email: kulyabov-ds@rudn.ru
ORCID iD: 0000-0002-0877-7063

Professor, Doctor of Sciences in Physics and Mathematics, Professor at the Department of Applied Probability and Informatics

ул. Миклухо-Маклая, д. 6, Москва, 117198, Россия; ул. Жолио-Кюри, д. 6, Дубна, Московская область, 141980, Россия

Список литературы

  1. J. Bezanson, A. Edelman, S. Karpinski, and V. B. Shah, “Julia: A fresh approach to numerical computing,” SIAM Review, vol. 59, no. 1, pp. 65-98, Jan. 2017. doi: 10.1137/141000671.
  2. B. Lauwens and A. Downey, Think Julia. O’Reilly Media, Inc., 2019.
  3. T. Kwong, Hands-on design patterns and best practices with Julia. Packt Publishing, 2020.
  4. C. T. Kelley, Solving nonlinear equations with iterative methods, Solvers and Examples in Julia. SIAM, 2022.
  5. J. Bezanson, J. Chen, B. Chung, S. Karpinski, V. B. Shah, J. Vitek, and L. Zoubritzky, “Julia: dynamism and performance reconciled by design,” Proceedings of the ACM on Programming Languages, vol. 2, no. OOPSLA, pp. 1-23, Oct. 2018. doi: 10.1145/3276490.
  6. M. N. Gevorkyan, A. V. Korolkova, D. S. Kulyabov, and K. P. Lovetskiy, “Statistically significant comparative performance testing of Julia and Fortran languages in case of Runge-Kutta methods,” in Numerical methods and applications. NMA 2018, ser. Lecture Notes in Computer Science, G. Nikolov, N. Kolkovska, and K. Georgiev, Eds., vol. 11189, Cham: Springer International Publishing, 2019, ch. 45, pp. 400-407. doi: 10.1007/978-3-030-10692-8_45.
  7. “JuliaStats, Statistics and machine learning made easy in julia.” (2023), [Online]. Available: https://juliastats.org/.
  8. Y. Nazarathy and H. Klok, Statistics with Julia, Fundamentals for Data Science, Machine Learning and Artificial Intelligence. Springer International Publishing, 2021. doi: 10.1007/978-3-030-70901-3.
  9. “Julia forums.” (2023), [Online]. Available: https://discourse.julialang.org.
  10. “StatsBase.jl.” (2023), [Online]. Available: https://github.com/JuliaStats/StatsBase.jl.
  11. “Distributions.jl.” (2023), [Online]. Available: https://github.com/JuliaStats/Distributions.jl.
  12. C. Führer, J. E. Solem, and O. Verdier, Scientific computing with Python, High-performance scientific computing with NumPy, SciPy, and pandas, 2nd. Packt Publishing Ltd., 2021.
  13. D. Toomey, Learning Jupyter. Packt Publishing Ltd., 2016.
  14. “Pluto.jl - interactive Julia programming environment.” (2023), [On-line]. Available: https://plutojl.org/.
  15. “Windows terminal, console and command-line repo.” (2023), [Online]. Available: https://github.com/microsoft/terminal.
  16. “Miniconda.” (2023), [Online]. Available: https://docs.conda.io/en/latest/miniconda.html.
  17. “Pluto.jl GitHub.” (2023), [Online]. Available: https://github.com/fonsp/Pluto.jl.
  18. “Julia GitHub.” (2023), [Online]. Available: https://github.com/JuliaLang/julia.
  19. A. V. Korolkova, M. N. Gevorkyan, and D. S. Kulyabov, “Implementation of hyperbolic complex numbers in Julia language,” vol. 30, no. 4, pp. 318-329, Dec. 2022. doi: 10.22363/2658-4670-2022-30-4-318-329.
  20. R. Muschevici, A. Potanin, E. Tempero, and J. Noble, “Multiple dispatch in practice,” in OOPSLA’08: Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications, ACM Press, Oct. 2008, pp. 563-582. doi: 10.1145/1449764.1449808.
  21. M. Besançon, T. Papamarkou, D. Anthoff, A. Arslan, S. Byrne, D. Lin, and J. Pearson, “Distributions.jl: Definition and modeling of probability distributions in the JuliaStats ecosystem,” Journal of Statistical Software, vol. 98, no. 16, pp. 1-30, 2021. doi: 10.18637/jss.v098.i16.

© Геворкян М.Н., Королькова А.В., Кулябов Д.С., 2023

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution-NonCommercial 4.0 International License.

Данный сайт использует cookie-файлы

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта.

О куки-файлах