Do efektywnego wykorzystania uczenia maszynowego, bardzo często wystarczy nam znajomość języka programowania Python i jakichś stworzonych dla niego bibliotek pomocniczych. Czasem chcemy jednak przeanalizować jakieś dane bez uczenia głębokiego. Albo chcemy wyliczyć jakieś statystyki z nimi związane. Może przygotować jakieś opracowanie do publikacji? Czy jesteśmy tutaj również skazani na Pythona? Okazuje się, że nie. Istnieje bowiem język programowania o dość enigmatycznej nazwie GNU R, który również może nam pomóc w analizie danych.
GNU R — idea
Według Wikipedii język R jest o około trzy lata młodszy od Pythona. Nie jest to jednak język, który powstał jako język ogólnego zastosowania. Głównym celem jego powstania było zaimplementowanie fajnych pomysłów z języków S i Scheme. Jak może domyślasz się po nazwie, podstawowy interpreter języka R został opublikowany na licencji GPL.
Dlaczego GNU R jest fajny?
Jedną z podstawowych zalet GNU R jest jego wbudowane wsparcie dla analiz statystycznych. GNU R po prostu powstał z myślą o wspieraniu programisty właśnie w tych analizach. Mamy tam modelowanie liniowe i nieliniowe, analizę szeregów czasowych, grupowanie, agregowanie, wizualizacje i wiele więcej. Jeśli znasz Pythona, to możesz sobie wyobrazić tutaj wbudowanie Scikit-Learn i Pandas.
Oczywiście wbudowane w GNU R funkcje to nie wszystko. Jak każdy szanujący się język programowania, GNU R posiada w sieci miejsce, gdzie twórcy rozszerzeń mogą je swobodnie publikować i utrzymywać. Najpopularniejsze miejsca dla GNU R to The Comprehensive R Archive Network (CRAN) i Bioconductor. To pierwsze to repozytorium zawierające dodatkowe biblioteki raczej ogólnego przeznaczenia. To drugie natomiast specjalizuje się w dodatkach dotyczących analiz genetycznych i innych podobnych biologiczno-medycznych zagadnień. Obydwa te repozytoria są dość dobrze moderowane, dzięki czemu biblioteki w nich dostępne można uznać za raczej bezpieczne i efektywne.
IDE dla GNU R
Sam bazowy interpreter języka R jest uruchamiany w interaktywnym terminalu tekstowym. Można również od razu uruchamiać całe skrypty w języku R. Nie jest to jednak najwygodniejszy sposób pracy. Jeśli więc zaczynasz dopiero swoją przygodę z GNU R, to chciałbym polecić Ci dwa wygodniejsze rozwiązania. Pierwsze jest już Ci być może znane. Jest to IDE Jupyter Notebook. Możesz go używać tak samo jak z Pythonem. Wystarczy tylko, że zmienisz tzw. kernel, który uruchamia Twój kod. Drugie środowisko to bardziej „klasyczne” R Studio, które posiada podgląd stanu pamięci, powłokę interaktywną, edytor kodu i przeglądarkę katalogów. Wszystko, co może Ci być potrzebne jeśli preferujesz bardziej programistyczny styl pracy.
Żeby było jeszcze fajniej, całe podstawowe środowisko R i obydwa edytory dostępne są z poziomu dystrybucji Anaconda. I żeby to wszystko zainstalować na swoim systemie, wystarczy tylko jedno polecenie. Nieźle, nie?
GNU R — Podsumowanie
Język R to bardzo ciekawe i przydatne narzędzie w świecie pracy z danymi. Z jednej strony jest to język nieco mniej uniwersalny niż Python. Nieco ciężej jest tam na przykład uruchomić skalujący się dynamicznie serwis, który jest usługą webową tak jak np. przy pomocy Django. Z drugiej strony jednak jeśli pracujesz w medycynie i zajmujesz się badaniami statystycznymi, to właśnie tutaj będziesz szukał bibliotek, które implementują najnowsze publikacje z tej dziedziny. Przygotowanie publikacji naukowej również może okazać się łatwiejsze właśnie przy pomocy zestawu narzędzi zbudowanych wokół języka R. Nie jest też niczym nadzwyczajnym używanie go na równi z Pythonem w ramach jednego projektu. A, że jest to język zdecydowanie mniej popularny niż Python, to może okazać się, że posiadanie jego znajomości w portfolio umiejętności, realnie przekłada się na większe zarobki. Ech, żeby jeszcze tylko doba była dłuższa o parę godzin.