Co to jest język programowania R? Wprowadzenie i podstawy R
Co to jest oprogramowanie R?
R jest językiem programowania i wolnym oprogramowaniem opracowanym przez Rossa Ihakę i Roberta Gentlemana w 1993 roku. R posiada obszerny katalog metod statystycznych i graficznych. Obejmuje algorytmy uczenia maszynowego, regresję liniową, szeregi czasowe, wnioskowanie statystyczne, aby wymienić tylko kilka. Większość bibliotek R jest napisana w R, ale w przypadku ciężkich zadań obliczeniowych, C, C++ i Fortrapreferowanych jest n kodów.
R jest powierzone nie tylko pracownikom naukowym, ale wiele dużych firm również korzysta z języka programowania R, w tym Uber, Google, Airbnb, Facebook i tak dalej.
Analiza danych za pomocą R odbywa się w kilku etapach; programowanie, przekształcanie, odkrywanie, modelowanie i komunikowanie wyników
- Program: R jest przejrzystym i dostępnym narzędziem programistycznym
- Przekształcać: R składa się z kolekcji bibliotek zaprojektowanych specjalnie do nauki o danych
- Wskazówski: Zbadaj dane, udoskonal swoją hipotezę i przeanalizuj je
- Model: R zapewnia szeroką gamę narzędzi do przechwytywania odpowiedniego modelu danych
- Komunikować się: Integruj kody, wykresy i wyniki z raportem za pomocą R Markdown lub twórz aplikacje Shiny, aby udostępniać je światu
Do czego służy R?
- Wnioskowanie statystyczne
- Analiza danych
- Algorytm uczenia maszynowego
R według branży
Jeśli podzielimy wykorzystanie R według branży, zobaczymy, że na pierwszym miejscu są pracownicy naukowi. R to język do tworzenia statystyk. R jest pierwszym wyborem w branży opieki zdrowotnej, a następnie w rządzie i konsultingu.
Pakiet R.
Podstawowymi zastosowaniami R są i zawsze będą statystyki, wizualizacje i uczenie maszynowe. Poniższy obrazek pokazuje, który pakiet R otrzymał najwięcej pytań w Stack Overflow. W pierwszej dziesiątce większość z nich jest związana z pracą analityka danych: przygotowaniem danych i przekazywaniem wyników.
Wszystkie biblioteki R, prawie 12 tys., są przechowywane w CRAN. CRAN jest darmowym i otwartym źródłem. Możesz pobrać i używać licznych bibliotek do wykonywania Nauczanie maszynowe lub analizę szeregów czasowych.
Porozmawiaj z R
R oferuje wiele sposobów prezentowania i udostępniania pracy za pomocą dokumentu przecenionego lub błyszczącej aplikacji. Wszystko może być hostowane w Rpub, GitHub lub na stronie internetowej firmy.
Poniżej znajduje się przykład prezentacji hostowanej na Rpub
Rstudio akceptuje przecenę w celu napisania dokumentu. Możesz eksportować dokumenty w różnych formatach:
- Dokument:
- HTML
- PDF/lateks
- słowo
- prezentacja
- HTML
- Projektor PDF
Rstudio ma świetne narzędzie do łatwego tworzenia aplikacji. Poniżej przykład aplikacji z danymi Banku Światowego.
Dlaczego warto używać R?
Analityka danych kształtuje sposób, w jaki firmy prowadzą swoją działalność. Bez wątpienia trzymanie się z daleka od sztucznej inteligencji i maszyn doprowadzi firmę do upadku. Najważniejsze pytanie brzmi: jakiego narzędzia/języka należy użyć?
Na rynku dostępnych jest mnóstwo narzędzi umożliwiających analizę danych. Nauka nowego języka wymaga inwestycji czasu. Poniższy rysunek przedstawia krzywą uczenia się w porównaniu z możliwościami biznesowymi, jakie oferuje język. Relacja ujemna oznacza, że nie ma darmowego lunchu. Jeśli chcesz dać z danych jak najlepszy wgląd, to musisz poświęcić trochę czasu na naukę odpowiedniego narzędzia, jakim jest R.
W lewym górnym rogu wykresu widać Excel i PowerBI. Te dwa narzędzia są łatwe do nauczenia, ale nie oferują wyjątkowych możliwości biznesowych, zwłaszcza w zakresie modelowania. W środku widać Python i SAS-a. SAS jest narzędziem dedykowanym do przeprowadzania analiz statystycznych dla biznesu, jednak nie jest darmowy. SAS to oprogramowanie typu „kliknij i uruchom”. Pythonjest jednak językiem o monotonnej krzywej uczenia się. Python to fantastyczne narzędzie do wdrażania uczenia maszynowego i sztucznej inteligencji, ale brakuje mu funkcji komunikacyjnych. Dzięki identycznej krzywej uczenia się R stanowi dobry kompromis między implementacją a analizą danych.
Jeśli chodzi o wizualizację danych (DataViz), prawdopodobnie słyszałeś o Tableau. Tableau jest bez wątpienia doskonałym narzędziem do odkrywania wzorców za pomocą wykresów i wykresów. Poza tym nauka Tableau nie jest czasochłonna. Jednym z dużych problemów związanych z wizualizacją danych jest to, że możesz nigdy nie znaleźć wzorca lub po prostu utworzyć mnóstwo bezużytecznych wykresów. Tableau to dobre narzędzie do szybkiej wizualizacji danych lub Business Intelligence. Jeśli chodzi o statystyki i narzędzie podejmowania decyzji, R jest bardziej odpowiedni.
Stack Overflow to duża społeczność języków programowania. Jeśli masz problem z kodowaniem lub musisz zrozumieć model, Stack Overflow jest tutaj, aby pomóc. W ciągu roku odsetek wyświetleń pytań gwałtownie wzrósł dla R w porównaniu z innymi językami. Ten trend jest oczywiście silnie skorelowany z rozkwitem nauki o danych, ale odzwierciedla zapotrzebowanie języka R na naukę o danych.
W data science konkurują ze sobą dwa narzędzia. R i Python to prawdopodobnie język programowania, który definiuje naukę danych.
Czy warto wybrać R?
Analityk danych może korzystać z dwóch doskonałych narzędzi: R i Python. Możesz nie mieć czasu na naukę obu, zwłaszcza jeśli zaczniesz uczyć się nauki o danych. Nauka modelowania statystycznego i algorytmu jest o wiele ważniejsze niż nauka języka programowania. A język programowania to narzędzie do obliczania i komunikowania swojego odkrycia. Najważniejszym zadaniem w nauce danych jest sposób, w jaki sobie z nimi radzisz: importowanie, czyszczenie, przygotowanie, inżynieria funkcji, wybór funkcji. To powinno być Twoim głównym celem. Jeśli próbujesz nauczyć się R i Python jednocześnie bez solidnego zaplecza statystycznego jest to po prostu głupie. Analitycy danych nie są programistami. Ich zadaniem jest zrozumienie danych, manipulowanie nimi i wyselekcjonowanie najlepszego podejścia. Jeśli zastanawiasz się, jakiego języka się uczyć, zobaczmy, który język będzie dla Ciebie najodpowiedniejszy.
Głównymi odbiorcami analityki danych są profesjonaliści biznesowi. W biznesie jedną z najważniejszych konsekwencji jest komunikacja. Sposobów komunikacji jest wiele: raport, aplikacja internetowa, dashboard. Potrzebujesz narzędzia, które zrobi to wszystko razem.
Czy R jest trudne?
Wiele lat temu R był językiem trudnym do opanowania. Język był zagmatwany i nie tak zorganizowany jak inne narzędzia programistyczne. Aby przezwyciężyć ten poważny problem, Hadley Wickham opracował zbiór pakietów o nazwie tidyverse. Zasady gry zmieniły się na lepsze. Manipulacja danymi staje się banalna i intuicyjna. Tworzenie wykresu nie było już takie trudne.
Najlepsze algorytmy uczenia maszynowego można zaimplementować za pomocą R. Pakiety takie jak Keras i TensorFlow pozwalają na tworzenie zaawansowanych technik uczenia maszynowego. R ma również pakiet do wykonywania Xgboost, jednego z najlepszych algorytmów dla konkurencji Kaggle.
R może komunikować się z innym językiem. Istnieje możliwość zadzwonienia Python, Java, C++ w R. Świat big data jest również dostępny dla R. Możesz połączyć R z różnymi bazami danych, np Spark lub Hadoopa.
Wreszcie R ewoluował i pozwolił na paralelizację operacji, aby przyspieszyć obliczenia. W rzeczywistości R był krytykowany za używanie tylko jednego procesora na raz. Pakiet równoległy pozwala wykonywać zadania w różnych rdzeniach maszyny.
Podsumowanie
Krótko mówiąc, R jest świetnym narzędziem do eksploracji i badania danych. Skomplikowane analizy, takie jak klasteryzacja, korelacja i redukcja danych, są wykonywane za pomocą R. To jest najważniejsza część, bez dobrej inżynierii cech i modelu wdrożenie uczenia maszynowego nie da znaczących rezultatów.