Jak zacząć i nauczyć się R?

16

Kilka razy próbowałem „pójść sam” - ale z ograniczonym sukcesem. Jestem zwykłym użytkownikiem SPSS i mam doświadczenie w SAS.

Doceniłby wskaźnik lub dwa od kogoś, kto ma podobne pochodzenie i teraz używa R.

Marketing Engineer
źródło
2
To prawdopodobnie powinna być wiki społeczności. Inne kwestie istotne są materiały do nauki R , Gdzie mogę znaleźć przydatne tutoriale R , a wątek oprogramowanie meta stat wykazie środków na badania .
Andy W
Zobacz nasz meta post, oznaczonych FAQ : meta.stats.stackexchange.com/questions/793/... .
Andre Silva,

Odpowiedzi:

17

Myślę, że jedynym sposobem, aby dostać się do niego to następnym razem, gdy trzeba zrobić coś w SAS lub SPSS odpalić R zamiast . Na początku jest ciężko i na początku poświęcisz dużo czasu na proste zadania. Gdy utkniesz w google, problem i prawdopodobnie znajdziesz rozwiązanie. Możesz sprawdzić swoje wyniki za pomocą SPSS lub SAS.

W końcu zaczynasz rozumieć i zadania zaczynają działać szybciej. Odwoływanie się do starego kodu zawsze pomaga. Mam nadzieję, że odczuwasz dumę z dokonanych postępów.

Następnie, gdy stajesz się bardziej zaawansowany i czytasz blogi oraz tę stronę, zaczynasz poznawać prawdziwą moc R, sztuczki i wszystko, co jest możliwe.

Dolina górska
źródło
2
Jeden wielki problem: system pomocy R. jest dobry, gdy wiesz, o czym chcesz wiedzieć. Nie jest tak dobrze, jeśli nie masz pojęcia, co musisz zrobić. Znajdź więc zasób, który pokazuje podstawy, takie jak: wczytywanie danych, jak dotychczas zapisywać swoją pracę, jak tworzyć i zapisywać wykresy, jak uzyskać pomoc itp. Na przykład, jeśli powiesz „Hej, Chcę coś prognozować, więc wpiszę „prognozę, aby uzyskać pomoc”. Nic nie wymyślisz. W języku R zwykłym terminem jest „przewidywanie”. UWIELBIAM R, ale muszę to utrzymać. Zrozum też, że R jest językiem programowania, w przeciwieństwie do SAS lub SPSS: najpierw trudniej, lepiej później.
Wayne
13

Kilka wskazówek:

  1. Odpowiedź @Glen jest kluczem. Musisz zmusić się do zrobienia czegoś w R, nawet jeśli wiesz, że możesz to łatwo zrobić za pomocą SPSS.
  2. Kilka miesięcy temu zrobiłem listę książek programistycznych R, które nie próbowały uczyć statystyki, a raczej opisywały R.
  3. Subskrybuj kanały RSS r-bloggers.com i tag R. stackoverflow . Uważam, że bardzo pomocne jest przeglądanie artykułów w celu uzyskania wskazówek i wskazówek.
csgillespie
źródło
8

Mnóstwo dobrych rad tutaj, ale myślę, że najbardziej pomocną rzeczą, jaką możesz zrobić, to po prostu usiąść z kimś, kto zna R. przez kilka godzin. Prawdopodobnie wziąłem lata z życia, ucząc się R; po prostu powiedzenie „Nie, o wiele łatwiej to zrobić” uratowałoby mnie tak bardzo. Myślę, że jest to szczególnie ważne w odniesieniu do nauki robienia rzeczy w R, a nie SPSS w R, jak wspomina StasK, ale powstrzyma cię także od spędzania godzin na szukaniu głupich małych błędów składniowych.

Nie wygląda na to, że Pittsburgh ma grupę użytkowników R, co mnie zaskakuje, ale w pobliżu musi być wielu Rgonautów. Spróbuj je znaleźć. Przekupić kogoś, aby po prostu spędzał z tobą czas podczas pracy nad wszystkim, co opisano powyżej - tłumaczenie starego projektu na R brzmi szczególnie dobrze.

Matt Parker
źródło
Myślę, że określenie skutków zdrowotnych przejścia przez krzywą uczenia się R byłoby doskonałym badaniem!
N Brouwer
7

Ta książka może znajdować się tuż za twoją aleją: R. Muenchen (2008). R dla użytkowników SAS i SPSS .

Miałem bardzo podobne doświadczenia, zaczynając R kilka razy. Jestem jednak użytkownikiem Stata. Muenchen i Hilbe (lo-ong redaktor czasu odpowiedzialny za sekcję oprogramowania statystycznego The American Statistician ) mają podobną książkę R dla użytkowników Staty, i uważam to za zabawne, gdy zapewniają 20-liniowy segment kodu dla czegoś, co można wykonać w trzech liniach w Stata. (Z drugiej strony zdarzają się oczywiście sytuacje, w których po prostu nie można zrobić rzeczy zorientowanej obiektowo w Stacie.) Myślę, że przesłanie brzmi: powinieneś abstrahować od doświadczenia SPSS i SAS, jak R myśli w zupełnie innych kategoriach o prawie wszystkim. Twoje wcześniejsze doświadczenia będą prawdopodobnie bardziej przeszkodą, przynajmniej w przypadku R (prawdopodobnie będziesz mógł ponownie nauczyć się ze SPSS do Staty, jeśli będziesz musiał). Nie ma już prostokątnych zestawów danych i nie ma KART do odczytu. Będziesz musiał w końcu nauczyć się robić rzeczy R, zamiast próbować robić rzeczy SPSS w R.

StasK
źródło
Bardzo podoba mi się książka Muenchen
Peter Flom - Przywróć Monikę
7

Byłem w twoich butach - zapewne nadal jestem w twoich butach - ponieważ regularnie używam zarówno R, jak i SAS do różnych zadań. Jak wspomniano powyżej, istnieje „R dla użytkowników SAS”, a możesz także rozważyć przejrzenie bloga „SAS and R”: http://sas-and-r.blogspot.com/ oraz dołączonej książki, która zawiera działały przykłady w SAS i R.

Ogólnie rzecz biorąc, doświadczenie w przełączaniu między SAS i R jest nieco dezorientujące, ponieważ różnią się one filozoficznie. U podstaw SAS nie jest językiem programowania - to potężny interfejs wiersza poleceń. R ... jest językiem programowania. R miał dla mnie więcej sensu, kiedy zacząłem uczyć się Pythona i C, niż kiedy znałem SAS. Trzeba przyznać, że jest to język programowania zbudowany dla statystyk, ale masz go.

Chociaż podejście polegające na zmuszeniu się do odpalenia R zamiast SAS jest przyzwoite, proponuję coś innego na początku, ponieważ zanurzenie stóp w nowym projekcie i nowym oprogramowaniu jest przerażające jak diabli. Powtórz starą analizę . Weź artykuł, który napisałeś, problem, który zrobiłeś, cokolwiek w SAS (lub SPSS) i powtórz go w R. Krok po kroku, Googling i zadawaj pytania tutaj. Ma to trzy zalety:

  1. Przypadkowo nie zabijesz nowego projektu decyzją „Powinienem nauczyć się nowego języka”.
  2. Znasz już odpowiedź. Oznacza to, że możesz być pewien, że uzyskałeś poprawną odpowiedź w R.
  3. Lepiej zilustruje różnice między różnymi językami. „Wow, o wiele łatwiej było to zrobić w R ...”, „Nigdy tak naprawdę nie spojrzałem na tego rodzaju wykres” itp.
Fomite
źródło
5

Zgadzam się z @Matt Parker, że jest wiele dobrych rad. Jedną rzeczą, na którą chcę podkreślić w mojej odpowiedzi, jest to, że jeśli chcesz pracować z R., konieczne jest zrozumienie podstawowego programowania.

Podstawowe programowanie

Moją ulubioną stroną do nauki nowych rzeczy jest Khan Academy, która zawiera kilka filmów na temat skryptów w języku Python, które są bardzo podobne do R, i jest tak naprawdę wtyczka, która pozwala używać Pythona w SPSS, którą można tutaj znaleźć . Często korzystałem z wtyczki Python, wykonując złożone scalenia, licząc zdarzenia, tworząc niestandardowe tabele itp. To bardzo dobry sposób na rozpoczęcie programowania.

O co chodzi z R?

Znam kilka różnych języków programowania i to, co czyni R wyjątkowym, to wektory / macierze i grafika. Polecam poznanie różnych sposobów manipulowania wektorami, ponieważ są one podstawą ramek danych i większości danych, których będziesz używać, oto dobry samouczek . Jeśli chodzi o wyjście graficzne, istnieją dobre funkcje dla większości dostępnych wykresów i prawdopodobnie nie musisz się martwić o tę część.

Kolejną podstawową częścią R jest funkcja install.packages („moja_nazwa_pakietu”), która sprawia, że ​​pobieranie nowych składników i instalowanie ich jest bezproblemowe - coś, co znacznie utrudnia wiele innych języków.

Pierwsze kroki w R

Moja ulubiona strona R to Quick-R i sugerowałbym wypróbowanie części ich kodu. Po uzyskaniu tego samego wykresu spróbuj zmienić kolory, liczbę kolumn, Xlabel itp. Istnieje również wiele samouczków R na YouTube, które prawdopodobnie mogą pomóc Ci zacząć.

Uczenie się poprzez badanie kodu innych osób

Doskonałym sposobem na naukę języka R jest próba zrozumienia, jak działają różne funkcje. Wpisz nazwę funkcji (bez nawiasów), naciśnij enter, a otrzymasz kod - spójrz na jego kod i spróbuj zrozumieć, co robi. Funkcja debug () może być również pomocna, gdy próbujesz zrozumieć, jak działają rzeczy.

Używanie R bez kodowania

Tak, możesz użyć R w podobnym środowisku SPSS :

install.packages("Rcmdr")
library(Rcmdr)

R w porównaniu z SAS

Pracowałem również z SAS, który jest bardzo nieintuicyjnym językiem, który bardzo różni się od wszystkich innych języków programowania i niestety prawdopodobnie będziesz miał bardzo mało, z czego możesz korzystać z doświadczenia SAS podczas pracy z R. To powiedziawszy, R jest o wiele łatwiejsze niż SAS ;-)

GUI

Przyjemnie jest mieć dobre środowisko do pracy, gdy używasz R, zalecam początkującym RStudio .

Powodzenia!

Max Gordon
źródło
Heh - Nie zgadzam się z tym, że SAS jest trudniejszy niż R. Są ... inni. Jeśli ktoś wywodzi się z tradycji języków programowania, R może mieć więcej sensu niż SAS. Ale tak naprawdę, jeśli chodzi o to, są inne - jak powiedziałem w moim poście, SAS jest bardziej interfejsem wiersza poleceń niż właściwym językiem programowania.
Fomite,
Zgadzam się, że są bardzo różne i to bardziej opinia niż stwierdzenie. Jest kilka podstawowych funkcji, których brakowało mi przy próbie nauczenia się SAS, gdzie najbardziej podstawowa była dobra funkcja pomocy, nigdy nie zagłębiłem się głęboko w SAS. Zauważyłem jedną rzecz: wielu używających SAS kopiuje swoją starą składnię bez zrozumienia. Widziałem ludzi piszących kod, w którym połowa polecenia nawet nie jest używana. Dlatego uważam, że kiedy opanujesz programowanie, nauka języka R nie będzie taka trudna. Dobra pomoc, podświetlanie składni, bogata społeczność internetowa jest bardzo warta, a wiedza o programowaniu jest naprawdę pomocna w 2011 r.
Max Gordon
System pomocy SAS jest skoncentrowany w dokumentach pomocniczych. Ale tak, głównie dlatego, że są zupełnie inni. Irytujące są funkcje obu języków, które trudniej jest powielić w innym, co od czasu do czasu pozwala mi korzystać z obu. Czego tak naprawdę wolałbym nie robić.
Fomite,
4

Myślę, że odpowiedź wspomniana przez @Glen jest bardzo ważna, jednak na początek potrzebujesz książek.

Jeśli chodzi o RI, uważam, że potrzebujesz 3 książek.

Po pierwsze, do robienia statystyk z R mogę polecić R w akcji . Robert utrzymuje bardzo aktywną stronę R i blog (http://www.statmethods.net/), a jego książka i wysiłki są fantastyczne.

Po drugie, możesz potrzebować książki do programowania w języku R, ponieważ R to nie tylko program statystyczny, ale także potężny język. Programowanie jest bardzo pomocne podczas wykonywania złożonych analiz, łączenia analiz lub pisania funkcji wykonujących to samo na różnych zestawach danych. Mogę tylko polecić The Art of R Programming . Nie są tu prezentowane żadne główne statystyki, ale zrozumiesz, jak łączyć, łączyć i automatyzować swoje analizy.

Po trzecie, będziesz potrzebować podręcznika , encyklopedii. Mogę ci polecić The R Book . To nie jest książka, którą będziesz czytać od początku do końca, ale to książka, którą od czasu do czasu otwierasz, aby sprawdzić, czy pewne rzeczy są możliwe, czy istnieją inne sposoby analizy danych itp.

I najważniejsze: przestań używać czegokolwiek innego i spróbuj rozwiązać wszystkie swoje problemy w R. Rozwiązywanie problemów w najlepszy sposób, aby się uczyć.

Także zanim zapomnę. Istnieje kilka wspaniałych blogów fantastycznych ludzi piszących o różnych rzeczach, które można zrobić w R. Search, a znajdziesz. Wysoce zalecana jest witryna agregująca http://www.r-bloggers.com/, na której gromadzone są odpowiednie blogi.

Baw się dobrze!

ECII
źródło
1

Gdybym mógł dodać dwa elementy do wielu dobrych sugestii już tutaj;

1) Znajdź grupę R. Wiem, że w rejonie Bostonu istnieje dość silna grupa R. Jest sponsorowany przez RStudio , które, nawiasem mówiąc, jest jednym z NAJLEPSZYCH IDE.
Wejdź na Meetup, grupę Google lub RSeek.org, aby je wyszukać.

2) Jeszcze jedna rzecz: nauczyłem się R na własnej stromej wspinaczce, ale moja ogólna rada to poszukiwanie książek, które pomogą I NIE ZATRZYMUJĄ SIĘ, dopóki nie znajdziesz właściwej.

oaxacamatt
źródło
1

Marketing Engineer:

Wiem, że twoje problemy są najlepsze i najgorsze z R jest zbyt funkcjonalne, dopóki nie wiemy, od czego zacząć.

Po pierwsze, musisz wiedzieć, jaki jest cel uczenia się R. Jeśli jesteś po to, aby uczyć się nowego języka, myślę, że SAS i R Blog mogą być przydatne, jako użytkownik SAS / SPSS.

Jednak R nie jest tak trudne w porównaniu do SAS lub SPSS, po prostu wyglądało na skomplikowane ze względu na coraz większą liczbę pakietów i funkcji. Proponuję więc uczyć się od zera za pomocą dowolnych sugerowanych instrukcji lub stron internetowych, takich jak Quick-R, autor R w akcji. Uwaga: R in Action to dobra książka na początek.

Co jeśli użyłeś R do określonych celów, to lepiej zajrzyj do listy R Book na stronie R Project Web. Istnieje 129 książek związanych z R i S w określonych aplikacjach, takich jak ekonometryczne, graficzne, modelowanie itd.

Ostatnio myślę o interaktywnej platformie do nauki języka R i poprosiłem również o opinię. To projekt typu open source (jeszcze nie wydany). Zacząłem tworzyć działający prototyp z podstawowymi lekcjami 3 języka R. Możesz spróbować.

Mam nadzieję, że to pomoże :-)

Kai Feng Chew
źródło
0

Jest bezpłatny wczesna wersja R dla SAS i SPSS Użytkowników na http://r4stats.com . Ta strona zawiera również wiele przykładów książek wyświetlanych teraz jako strony internetowe. Jeśli masz dostęp do biblioteki uniwersyteckiej, zazwyczaj mają wszystkie książki Springer R. online za darmo.

użytkownik3155
źródło