Jak nauczyć się R jako języka programowania [zamknięte]


105

Chciałbym wiedzieć, jak nauczyć się języka R jako języka „programowania” w przeciwieństwie do uczenia się go jako systemu statystycznego. Moje pytanie jest spowodowane brakiem zrozumienia takich funkcji, jak parse, eval itp., Które mogą nie być często używane przez użytkownika R z perswazją „statystyki”.

Edycja: eksplorowałem takie narzędzia, jak Rpy RSPerl rJava i chciałbym (przynajmniej) być w stanie zrozumieć koncepcje ułatwiające komunikację R z innymi językami programowania.

Dostępność aplikacji internetowych dla języka R (R-PHP, RApache itp.) Jest kolejnym czynnikiem motywującym mnie do głębszego, bardziej strukturalnego zrozumienia języka R.

Na koniec chciałbym móc pisać pakiety R, dla których takie zrozumienie byłoby korzystne, gdyby nie było konieczne.


1
Lepsze odpowiedzi uzyskasz, jeśli możesz powiedzieć, dlaczego rozważasz użycie R jako języka programowania, a nie systemu statystycznego. Czy sklejasz ze sobą inne oprogramowanie, już opracowane w R? Czy masz innych programistów, którzy nie znają nic poza R, więc jesteś zmuszony do rozwijania się w nim?
Chip Uni

7
Zdecydowanie potrzebna jest książka o tytule takim jak „Statystyczna inżynieria oprogramowania z R”, która wyjaśniałaby R z punktu widzenia języków programowania, omawiałaby zasady programowania funkcjonalnego i programowania obiektowego w R i naprawdę skupiałaby się na najlepszych praktykach do tworzenia stosunkowo dużych systemów.
Harlan

Myślę, że to jeden z najfajniejszych
Umit Kaya

Mój głos za ponownym otwarciem opiera się na fakcie, że jest to bardzo pozytywne pytanie i jest jednym z pierwszych trafień w Google podczas wyszukiwania hasła „stackoverflow r”. Ma 10 lat i tylko niektóre z zaleceń są nadal aktualne. Ponadto wyeliminowano brak możliwości oferowania bardziej nowoczesnych materiałów.
IRTFM

@ 42- nie uznałbyś tego za pytanie typu „szukanie samouczka”?
camille

Odpowiedzi:


87

Na początek możesz zajrzeć do tego artykułu autorstwa Johna Cooka . Upewnij się również, że przeczytałeś „The R Inferno” .

Na stronie domowej języka R jest wiele dobrych zasobów , ale w szczególności przeczytaj „Wprowadzenie do języka R” i „Definicja języka R” .

Kilka bardzo ściśle powiązanych pytań dotyczących przepełnienia stosu:

Moja ulubiona książka na ten temat: „Oprogramowanie do analizy danych: programowanie w R” autorstwa Johna Chambersa , twórcy języka S.


Miałem odpowiedzieć tym samym linkiem. @harshsinghal Zakładając, że nie jesteś całkowitym początkującym w programowaniu, ten link jest bardzo przydatny.
Secko

Gwarantuję również za piekło R. Zawiera wiele tego, co wyciągnąłem z książki Chambersa bez gadatliwości i przekonań religijnych.
eytan

Dokument R inferno jest genialny
Federico Giorgi

23

Dobra książka do nauki R-as-a-programowania-language (w przeciwieństwie do R-for-statistics) to The Art of R Programming autorstwa Normana Matloffa.

wprowadź opis obrazu tutaj

Jest bardzo czytelny, nie zakłada, że ​​jesteś informatykiem i jest dość niedrogi, jak na książki R.


18

Raczej zasugerowałbym dobry i wszechstronny początek, jak The R Book autorstwa Michaela Crawleya. To łatwa do czytania i kompletna książka o podstawowych funkcjach języka R, zawierająca wskazówki statystyczne i kilka ćwiczeń. Koncentruje się w dużej mierze na mocnych stronach języka R (np. Modele liniowe) i podaje również przydatne sztuczki dotyczące kodowania. Bardzo mi to pomogło, gdy walczyłem na tajemniczych kursach online.

tekst alternatywny


2
Zgadzam się - to doskonała książka wprowadzająca; Crawley pisze bardzo wyraźnie.
Richie Cotton

Jest zbyt szczegółowe. Powyższy artykuł Johna Cooka jest o wiele bardziej zwięzły. Jako programista nie potrzebujesz dużej części „książki R”.
maksymalnie

14

Jestem bardzo praktycznym uczniem, więc ta rada może być specyficzna dla mojego stylu uczenia się. Sugerowałbym, że najlepszym miejscem do rozpoczęcia „nauki programowania” w jakimkolwiek języku jest znalezienie problemów wykraczających poza normalny zakres doświadczenia, a następnie próba ich rozwiązania za pomocą języka programowania.

Projekty, które nauczyły mnie najwięcej o programowaniu, Rnie miały nic wspólnego ze statystyką.

Znajomość funkcji takich jak parse()i eval()w żadnym wypadku nie jest miarą bycia „dobrym programistą języka R”. Aplikacje wymagające intensywnego korzystania z tych funkcji nie stanowią większości problemu, w którym można zastosować R. Zamiast tego uważam, że powinieneś spróbować być „dobrym programistą”, który wie R. Obejmuje to udoskonalenie metod rozwiązywania problemów.

Programowanie nie jest sportem widowiskowym - dobra książka jest niezbędna jako odniesienie do dostępnych narzędzi, ale musisz znaleźć kilka problemów, które pozwolą ci doskonalić swoje umiejętności.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.