Ні, я нічого про них не знаю. Я ненавиджу усіх змій
Ця заява, зроблена електротехніком на пенсії, який спеціалізувався на машинному кодуванні, трохи мене збентежила. Я не питала, чи знає він щось про пітонів – у множині; питання було в тому, чи знає він щось про Python (або пітон в українській озвучці) – в однині.
Можливо, це непорозуміння було спричинене неполадками у зв’язку, або, можливо, оскільки мій співрозмовник – пристрасний садівник, він подумав, що я маю на увазі рептилій, хоча я здригаюся від думки про те, що якісь змії обрали чийсь сад-город своєю домівкою. Хоча які в Україні пітони?
Або це могло бути просто тому, що мова програмування Python не була настільки відомою або вживаною в конкретній галузі мого співрозмовника, а отже, він ніколи не мав причини вивчати її.
Я пояснила своє питання і окреслила його передісторію — дослідження для цієї статті. Ми добряче посміялися та обговорили одну з інших сфер його компетенції: галузь науки про дані, що стрімко розвивається. Вона розвивалася під час його виходу на пенсію і продовжує набирати обертів і сьогодні.

Насправді «наука про дані» є одним із термінів, які найчастіше шукають у Google. Сама по собі ця статистика є важливою; це так само важливо, як і зв’язок між наукою про дані та Python.
Отже, давайте дізнаємося, що таке наука про дані, як вона пов’язана із Python і яким чином ви можете побудувати собі успішну та фінансово вигідну кар’єру, вивчаючи обидві ці гілочки.
Що таке наука про дані?
Як пов’язати статистику та аналіз даних з інформатикою? Просто! Назвіть це наукою про дані, та й по тому.
Як не дивно, досі немає консенсусу щодо того, що таке наука про дані. У вільних термінах це визначено вище, але, по суті, вона залишається концепцією, а не справжньою наукою.
Термін вперше з’явився в 1962 році, коли американський статистик Джон Тьюкі визначив те, чим він займався, як аналіз даних. Його робота включала багато аспектів сучасної науки про дані, але цей термін вперше офіційно з’явився лише в 1985 році.
Знадобилося ще сім років для офіційного визнання нової галузі досліджень, яка поєднує принципи та концепції статистики та аналізу даних з обчисленнями.
Ця галузь стане відомою як data science – наука про дані.
Кожна з наступних дат має особливе значення в комп'ютерному світі:
- у 1962 році була створена перша комп’ютерна програма, розроблено оперативну та віртуальну пам’ять;
- 1985: була опублікована мова програмування C++; Массачусетський технологічний інститут заснував свою медіа-лабораторію, а Майкл Делл, засновник Dell Computers, відкриває свою першу компанію (персональні комп’ютери на замовлення)
Nintendo випустила свою ігрову консоль NES, винісши аркадні комп’ютерні ігри в ар’єргард, пасти задніх; - 1992: паралельний суперкомп'ютер Intel Paragon визнаний найшвидшим комп'ютером у світі.
Paragon був важливим, оскільки використовувався для обробки різних видів даних, наукових і статистичних.
Іншим знаковим роком для науки про дані став 1991 рік. Саме цього року Всесвітня павутина стала публічною. Комп’ютери стали мейнстрімом, забезпечуючи спеціалістів із обробки даних надлишком інформації, навіть якщо вони ще не знали, що з усім цим добром робити. Проте з тих пір збір і аналіз даних ніколи не були такими, як раніше.
До – і навіть після цих подій – статистики та аналітики даних мали багато роботи. По-перше, вони повинні були збирати дані, вирішувати, які змінні враховувати та які методи використовувати для отримання інформації, і, нарешті, моделювати отриману інформацію та інтерпретувати її для сторони, що замовила дослідження.
У той час просто зібрати відповідні дані було монументальним (і обтяжливим) завданням; обчислення та візуалізація потребували серйозних інтелектуальних зусиль та брейн-стормів. Сьогодні дослідники даних мають величезну кількість даних буквально під рукою, і вони мають комп’ютери, які можуть виводити діаграми, розсіювання за запитом, буквально за кліком мишки.

Зараз дослідники обробки даних охоплюють дуже цікаву сферу машинного навчання, навчаючи комп’ютери вдосконалювати свої алгоритми за допомогою даних.
Машинне навчання та інтелектуальний аналіз даних, виявлення закономірностей у великих наборах даних наразі є основними напрямками, за якими крокує наука про дані.
Основні відомості про мову програмування Python
У 1990 році сер Тім Бернерс-Лі наткнувся на серйозну перешкоду на шляху до запуску своєї Всесвітньої павутини: фінансування. Так, все завжди про гроші.
Проблема полягала в тому, що його код запускався лише на комп’ютерах NeXT. Ви коли-небудь бачили або, може, чули про цю марку? Якщо ні, ми вам розкажемо.
Це було раннє творіння Стіва Джобса, яке дебютувало у 1985 році. Воно не завоювало великої частки ринку, і лише через 12 років після того, як машини з’явилися на продаж, бренд припинив існування.
У той самий час інші інноватори створювали комп’ютери з різними операційними системами, які, імовірно, могли бути сумісними з інтернет-кодом сера Бернерса-Лі.
Проблема полягала в тому, що CERN був фінансовим спонсором Всесвітньої павутини, але люди, які приймали рішення, не хотіли платити за додаткові версії програмного забезпечення.
І тому всім розробникам програмного забезпечення, програмістам та, власне, усім, хто знав щось про мови програмування, розіслали заклик писати браузери, які працюватимуть на всіх типах машин. Ну, насправді, це була лише одна текстова сторінка, яка виходила через існуючу комп’ютерну мережу.
Ця частина інтернет-історії є однією з причин, чому сьогодні існує так багато мов програмування. Генезис Python є прямим нащадком мови програмування, яка, можливо, була частиною цієї божевільної боротьби, оскільки її батьківська мова, ABC, випустила свою першу стабільну версію приблизно в той час.
А ви знаєте, чому Python так називається? Спойлер: йшлося зовсім не про змій!
Ще одна причина неймовірного різноманіття мов програмування полягає в тому, що різні мови стосуються, відповідно, різних аспектів обчислювальної техніки. Деякі забезпечують високу продуктивність, необхідну в робототехніці та іграх, тоді як інші написані спеціально під бажаний функціонал – Java є яскравим прикладом цього. А яке місце займає Python в цій ієрархії?
Мова програмування Python народилася через розчарування надто складним синтаксисом наявних мов програмування. Наприклад, якщо ви працюєте на Java або C++ і хочете надати команду щось надрукувати, ваш код складатиметься з кількох рядків, фігурних дужок, хештегів та інших символів.
На противагу цьому, команда до друку в Python — це один рядок, який починається з команди print, за якою йде те, що потрібно надрукувати в дужках і подвійних лапках.
Душею і основою Python є простота. Дійсно, дзен третього твердження Python: «Просте краще, ніж складне».
Далі в цьому списку з 19 принципів ми знаходимо, що «Розріджений краще, ніж щільний» (це про багатослівність). і "Читабельність має значення".
Звичайно, ці твердження призначені для того, щоб визначити, як має бути написаний Python: просто, лаконічно та зрозуміло.
Але якщо розглядати їх у поєднанні з аналізом даних, чи не набувають ці прикметники зовсім іншого значення?
Наука про дані та Python
Python добре підходить для кількох аспектів обчислення. Наприклад, це одна з трьох найкращих мов, що використовуються у веб-розробці, а також застосовується у робототехніці, хоча й у обмеженій кількості.
Ви навіть можете розробляти комп’ютерні ігри на Python!
Завдяки своїй простоті та зрозумілості, Python є чудовим вибором навіть для новачків; спеціально розроблені онлайн-курси програмування для дітей допомагають зробити перші кроки у світі кодування.
З усіх сфер, до яких адаптується Python, наука про дані є однією з областей, де він використовується найбільш широко. Завдяки індексу пакетів Python (PyPI), що складається з майже 300 тисяч модулів, які називаються пакетами, серед яких математичні бібліотеки та функції, аналіз даних, як він є, — це просто підключення потрібного модуля для швидкого отримання бажаних результатів.
Одна бібліотека Python, NumPy містить велику колекцію математичних функцій, написаних для аналізу численних вимірів масивів даних і матриць.
Python спочатку не включав мову для числового кодування. Однак, оскільки ця мова програмування зацікавила наукове співтовариство на ранній стадії, незабаром цей дефіцит був компенсований за допомогою специфічної групи однодумців, яка не витрачала часу на створення пакета масивних обчислень.
SciPy — ще один пакет Python, особливо корисний для науки про дані; він фокусується на технічних і наукових обчисленнях. Ця бібліотека містить модулі лінійної алгебри, а також модулі для інтеграції, інтерполяції та обробки зображень. Зокрема, його модуль спеціальних функцій є чудовим інструментом для дослідників даних, оскільки він містить утиліти, надзвичайно (а може, й життєво) важливі для різних типів аналізу, від математичного до функціонального.
Крім того, є Matplotlib, бібліотека графічних зображень Python, яка здатна вбудовувати графіки в програми за допомогою об’єктно-орієнтованого інтерфейсу прикладного програмування (API).
Все це звучить складно та науково, але, по суті, зводиться до групи закодованих комп’ютерних програм, які під час виконання відображатимуть проаналізовані дані у вигляді діаграми розсіювання, двовимірного чи тривимірного графіка, лінійного графіка чи гістограми.

NumPy, SciPy і Matplotlib – це три причини, чому наука про дані та Python так міцно пов’язані між собою. Незалежно від того, чи обробляє дослідник даних - маркетингові, космічні чи атмосферні дані, кожна з цих бібліотек має модулі, здатні аналізувати та отримувати візуально інтерпретовані результати.
Крім того, є pandas, це ще одна бібліотека, написана для Python. Вона призначена для аналізу та маніпулювання (обробки) даних.
Це звучить підступно, але маніпулювання даними є невід’ємною частиною аналізу даних. Потрібно встановити параметри, щоб досліджувані дані були корисними.
Величезний каталог аналітичних функцій і математичних інструментів Python робить цю мову програмування незамінною для дослідників даних усіх мастей.
Без додатків Python науковці з обробки даних були б розчавлені сьогоднішньою величезною кількістю інформації – від космологічних і екологічних проблем до того, як люди роблять покупки. І, враховуючи, скільки нових способів аналізованих даних використовуються в роботі, не дивно, що наука про дані зараз є однією з найпопулярніших галузей у кар’єрній площині.
Відкрийте для себе багато способів використання Python та аналізу даних...