Що мене приваблює Python для моєї аналітичної роботи, це "повний стек" інструментів, які доступні завдяки тому, що вони розроблені як мова загального призначення порівняно з R як мова, що залежить від домену. Фактичний аналіз даних є лише частиною історії, і Python має багаті інструменти та чисту повнофункціональну мову, щоб отримати від початку до кінця однією мовою (незалежно від використання обгортки C / Fortran).
На передній частині, моя робота зазвичай починається з отримання даних з різних джерел, включаючи бази даних, файли в різних форматах або скребтування веб-сторінок. Підтримка Python для цього хороша. Більшість баз даних або загальних форматів даних мають надійну, доглянуту бібліотеку для інтерфейсу. Здається, R поділяє загальне багатство вводу-виводу даних, хоча, для FITS, пакет R, здається, не знаходиться в активному розвитку (немає випуску FITSio за 2,5 роки?). Багато наступного етапу роботи, як правило, відбувається на етапі організації даних та обробки на основі конвеєра з великою кількістю взаємодій на рівні системи.
На зворотному боці вам потрібно мати можливість відчутно представити великі набори даних, і для мене це зазвичай означає генерування веб-сторінок. Для двох проектів я написав значні веб-програми Django для ознайомлення з результатами великих проектів опитування Chandra. Це включало багато скребків (багатохвильові каталоги) тощо. Вони були просто використані внутрішньо для навігації по набору даних та допомоги в створенні каталогів джерел, але вони були безцінними в загальному проекті.
Переходячи до астрономічної функціональності для аналізу, очевидно, що спільнота твердо відстає від Python. Це вбачається в глибині доступних пакетів та рівні активності розвитку, як на індивідуальному, так і на інституційному рівні ( http://www.astropython.org/resources ). Зважаючи на такий рівень інфраструктури, який доступний і працює, я вважаю, що має сенс спрямувати зусилля, щоб перенести на Python найбільш корисні статистичні інструменти для астрономії. Це доповнило б поточну можливість виклику функцій R з Python через rpy2.Якщо вас цікавить, я настійно рекомендую прочитати цю статтю, тут мова йде про порівняння мов програмування https://diceus.com/what-technology- is-b ... nd-java-r / Я сподіваюся, що це допомагає