Programowanie w języku R.

Analiza danych, obliczenia, symulacje

1 opinia

Format:

pdf, ibuk

DODAJ DO ABONAMENTU

WYBIERZ RODZAJ DOSTĘPU

94,00

Format: pdf

 

Dostęp online przez myIBUK

WYBIERZ DŁUGOŚĆ DOSTĘPU

Cena początkowa:

Najniższa cena z 30 dni: 47,00 zł  


94,00

w tym VAT

TA KSIĄŻKA JEST W ABONAMENCIE

Już od 24,90 zł miesięcznie za 5 ebooków!

WYBIERZ SWÓJ ABONAMENT

Otwarte i wolno dostępne środowisko R zyskało w ostatnich latach ogromną popularność. Język R jest jednym z podstawowych narzędzi w warsztacie wielu analityków danych, statystyków, /data scientists/, badaczy opinii i rynku, specjalistów /business intelligence/ czy naukowców.
Książka skupia się na dogłębnym wyjaśnieniu zasad funkcjonowania środowiska R. Nie można jej jednak nazwać po prostu kursem programowania. Jest tak dlatego, że R jest ściśle związany z bogatymi obszarami swoich zastosowań. Czytelnik dowie się więc, w jaki sposób przeprowadzać w R obliczenia symulacyjne i numeryczne, jak implementować algorytmy przetwarzania danych, pobierać, tworzyć i przygotowywać zbiory danych do analizy, automatyzować bardzo żmudne - gdyby je wykonywać ręcznie – zadania czy też tworzyć raporty, tabele i wykresy.


Rok wydania2016
Liczba stron528
KategoriaProgramowanie
WydawcaWydawnictwo Naukowe PWN
ISBN-13978-83-011-8939-6
Numer wydania2
Język publikacjipolski
Informacja o sprzedawcyePWN sp. z o.o.

INNE EBOOKI AUTORA

Ciekawe propozycje

Spis treści

  Przedmowa XIII
  
  I Podstawy    1
  
  1. Środowisko R i program RStudio     3
    1.1. Cechy języka i środowiska R     3
    1.2. Organizacja pracy w R i RStudio     4
      1.2.1. Konsola R     5
      1.2.2. Program RStudio     6
      1.2.3. Pierwsze kroki w trybie interaktywnym     8
      1.2.4. Edytor skryptów     10
      1.2.5. System pomocy     11
  
  2. Typy atomowe: wektory i NULL     13
    2.1. Klasyfikacja typów obiektów w języku R     13
    2.2. Wektory atomowe     14
      2.2.1. Wektory wartości logicznych     14
      2.2.2. Wektory liczbowe     17
      2.2.3. Wektory napisów     18
      2.2.4. Pozostałe typy wektorów atomowych i ich hierarchia     19
    2.3. Tworzenie obiektów nazwanych     25
    2.4. Braki danych, wartości nieskończone i nie-liczby     29
    2.5. Typ pusty (NULL)     31
  
  3. Operacje na wektorach     34
    3.1. Podstawowe operatory     34
      3.1.1. Operatory arytmetyczne     35
      3.1.2. Operatory logiczne     38
      3.1.3. Operatory relacyjne     39
      3.1.4. Priorytety operatorów     41
    3.2. Indeksowanie wektorów. Filtrowanie danych     42
      3.2.1. Rodzaje indeksatorów     43
      3.2.2. Modyfikowanie wybranych elementów     45
    3.3. Przegląd funkcji wbudowanych     46
      3.3.1. Zwektoryzowane funkcje matematyczne     46
      3.3.2. Agregacja danych     51
      3.3.3. Operacje na sąsiadujących elementach wektorów     54
      3.3.4. Wyszukiwanie indeksów i wybór elementów wektorów     55
      3.3.5. Operacje oparte na permutowaniu elementów wektorów     57
      3.3.6. Operacje na zbiorach     59
      3.3.7. Podstawowe operacje na napisach     60
  
  4. Listy     63
    4.1. Tworzenie list     63
    4.2. Indeksowanie list     66
      4.2.1. Operator „[”     66
      4.2.2. Operator „[[”     66
      4.2.3. Modyfikowanie zawartości list     67
    4.3. Wybrane operacje na listach     70
      4.3.1. Łączenie, rozwijanie i powielanie list     70
      4.3.2. Wywoływanie funkcji na wszystkich elementach listy     73
  
  5. Funkcje     78
    5.1. Tworzenie obiektów typu funkcja     79
      5.1.1. Bloki wyrażeń     81
      5.1.2. Sprawdzanie poprawności argumentów     84
      5.1.3. Kilka uwag dla projektantów funkcji     87
      5.1.4. Biblioteki funkcji w plikach R     88
      5.1.5. Odwoływanie się do funkcji z pakietów R     89
    5.2. Zasięg nazw w funkcjach     90
    5.3. Parametry i argumenty     92
      5.3.1. Przekazywanie argumentów przez wartość     92
      5.3.2. Parametry z argumentami domyślnymi     93
      5.3.3. Parametr specjalny „...”     94
  
  6. Atrybuty obiektów     97
    6.1. Nadawanie i odczytywanie atrybutów     97
    6.2. Atrybuty specjalne     100
      6.2.1. Atrybut comment     101
      6.2.2. Atrybut names. Wektory z etykietami     101
      6.2.3. Atrybut class. Wstęp do programowania obiektowego S3     106
    6.3. O zachowywaniu i gubieniu atrybutów przez funkcje     111
  
  7. Typy złożone     114
    7.1. Macierze i tablice     114
      7.1.1. Tworzenie macierzy     114
      7.1.2. Indeksowanie macierzy     118
      7.1.3. Tablice jako uogólnienie macierzy     120
      7.1.4. Atrybut dimnames. Etykietowanie wierszy i kolumn     121
      7.1.5. Reprezentacja macierzy i tablic     122
      7.1.6. Wybrane operacje na macierzach     126
    7.2. Szeregi czasowe     129
    7.3. Czynniki     131
      7.3.1. Tworzenie czynników     132
      7.3.2. Reprezentacja czynników     132
      7.3.3. Czynniki a wektory napisów     134
      7.3.4. Wybrane operacje na czynnikach     135
    7.4. Ramki danych     138
      7.4.1. Reprezentacja ramek danych     139
      7.4.2. Operatory indeksowania. Filtrowanie danych     141
      7.4.3. Wybrane operacje na ramkach danych     144
  
  8. Pielęgnowanie kodu     156
    8.1. Organizacja kodu     157
      8.1.1. Projekty i skrypty     157
      8.1.2. Tworzenie własnych pakietów R     158
    8.2. Obsługa wyjątków     159
      8.2.1. Rodzaje wyjątków     159
      8.2.2. Obsługa komunikatów diagnostycznych i ostrzeżeń     160
      8.2.3. Obsługa błędów     161
    8.3. Testowanie oprogramowania     162
    8.4. Debugowanie kodu     165
    8.5. Pomiar i poprawa wydajności kodu     167
      8.5.1. Badanie krótkich fragmentów kodu     167
      8.5.2. Profilowanie aplikacji     168
      8.5.3. Złożoność czasowa i pamięciowa algorytmów     171
  
  9. Modyfikacja przepływu sterowania     174
    9.1. Wyrażenia warunkowe if i if...else     175
      9.1.1. Określanie testowanego warunku     178
      9.1.2. Wartości zwracane przez wyrażenia warunkowe     181
      9.1.3. Funkcja return(). Rekurencja     182
    9.2. Pętle     184
      9.2.1. Pętla while     184
      9.2.2. Pętla repeat     189
      9.2.3. Pętla for     190
    9.3. Uwagi na temat wydajności pętli     193
  
  II Przygotowanie danych    201
  
  10. Przetwarzanie napisów     203
    10.1. Podstawowe operacje na napisach     203
      10.1.1. Wyznaczanie długości napisów     203
      10.1.2. Porównywanie napisów     204
      10.1.3. Łączenie i powielanie napisów     206
      10.1.4. Przycinanie i wypełnianie     207
      10.1.5. Formowanie napisów na podstawie innych obiektów     208
      10.1.6. Zmiana pojedynczych znaków     211
      10.1.7. Wyznaczanie podnapisów     211
      10.1.8. Pozostałe operacje     213
    10.2. Wyszukiwanie wzorca     214
      10.2.1. Wzorce ustalone     215
      10.2.2. Wyrażenia regularne     218
      10.2.3. Wzorce rozmyte     229
    10.3. Data i czas     230
      10.3.1. Reprezentacja dat     230
      10.3.2. Reprezentacja czasu     231
      10.3.3. Operacje arytmetyczne     233
      10.3.4. Konwersja daty i czasu     234
    10.4. Reprezentacja napisów     235
      10.4.1. Kodowanie ASCII     235
      10.4.2. 8-bitowe kodowania polskich liter diakrytyzowanych     237
      10.4.3. Kodowanie UTF-8     238
      10.4.4. Konwersja kodowań     239
  
  11. Przetwarzanie plików     241
    11.1. Podstawowe operacje na plikach i katalogach     241
      11.1.1. Ścieżki dostępu do plików i katalogów     241
      11.1.2. Bieżący katalog roboczy. Ścieżki względne     243
      11.1.3. Informacje o plikach i katalogach     244
      11.1.4. Wybrane działania na plikach i katalogach     245
      11.1.5. Wyszukiwanie plików i katalogów     246
    11.2. Serializacja i deserializacja obiektów     248
    11.3. Popularne formaty plików     249
      11.3.1. Pliki CSV     250
      11.3.2. Pliki JSON     254
      11.3.3. Pliki XML     255
    11.4. Dostęp do baz danych SQL     256
    11.5. Dowolne pliki tekstowe     257
      11.5.1. Odczyt plików tekstowych     258
      11.5.2. Zapis plików tekstowych     258
    11.6. Połączenia     259
      11.6.1. URL, czyli ujednolicony lokalizator zasobów     259
      11.6.2. Tworzenie połączeń     260
      11.6.3. Otwieranie i zamykanie połączeń     262
      11.6.4. Odczyt danych z połączeń     262
      11.6.5. Zapis danych do połączeń     265
      11.6.6. Zarządzanie otwartymi połączeniami     266
      11.6.7. Nota o plikach binarnych     267
  
  III Prezentacja wyników    269
  
  12. Tworzenie wykresów     271
    12.1. Schemat systemów graficznych w środowisku R     271
    12.2. Podstawy użycia pakietu graphics     273
      12.2.1. Strona i rysunki     274
      12.2.2. Parametry graficzne     275
      12.2.3. Rysowanie punktów i odcinków (łamanych)     279
      12.2.4. Barwy     282
      12.2.5. Rysowanie wielokątów     284
      12.2.6. Wypisywanie tekstu     286
      12.2.7. Układ współrzędnych     287
      12.2.8. Tworzenie wielu rysunków na jednej stronie     291
    12.3. Wybrane wysokopoziomowe operacje graficzne     292
      12.3.1. Rysowanie układu współrzędnych     292
      12.3.2. Adnotacje i legenda     293
      12.3.3. Wizualizacja danych jednowymiarowych     295
      12.3.4. Wizualizacja danych dwuwymiarowych     298
      12.3.5. Wizualizacja danych wielowymiarowych     302
    12.4. Urządzenia graficzne     304
      12.4.1. Urządzenia pdf(), svg() i postscript()     307
      12.4.2. Urządzenia png() i jpeg()     307
  
  13. Generowanie raportów przy użyciu pakietu knitr     309
    13.1. Język Markdown     309
    13.2. Podstawy użycia pakietu knitr     316
    13.3. Ustawienia wstawek     320
      13.3.1. Identyfikatory wstawek i zależności między nimi     320
      13.3.2. Pamięć podręczna     321
      13.3.3. Wyświetlanie kodu i wyników tekstowych     322
      13.3.4. Rysunki     323
      13.3.5. Ustawienia globalne     324
  
  IV Zastosowania    335
  
  14. Obliczenia numeryczne     337
    14.1. Wprowadzenie     337
    14.2. Algebra wektorów i macierzy     340
      14.2.1. Podstawowe operacje     341
      14.2.2. Normy     342
      14.2.3. Metryki i inne odległości     344
      14.2.4. Wektory i wartości własne     348
      14.2.5. Rozkład Choleskiego     350
      14.2.6. Rozkład QR     351
      14.2.7. Rozkład SVD     354
    14.3. Różniczkowanie i całkowanie     356
      14.3.1. Różniczkowanie numeryczne     356
      14.3.2. Całkowanie numeryczne     359
    14.4. Optymalizacja     360
      14.4.1. Algorytmy programowania matematycznego     362
      14.4.2. Algorytmy optymalizacji ciągłej ogólnego zastosowania     365
    14.5. Interpolacja i wygładzanie     368
      14.5.1. Interpolacja jednowymiarowa     368
      14.5.2. Interpolacja dwuwymiarowa     369
      14.5.3. Wygładzanie     370
    14.6. Rozwiązywanie (układów) równań (nie)liniowych     372
      14.6.1. Wyznaczanie miejsc zerowych funkcji jednej zmiennej     372
      14.6.2. Rozwiązywanie układów równań liniowych     374
      14.6.3. Rozwiązywanie układów równań nieliniowych     374
  
  15. Symulacje     376
    15.1. Generowanie liczb (pseudo)losowych     376
      15.1.1. Źródła (pseudo)losowości     377
      15.1.2. Określanie ziarna generatora     378
      15.1.3. Szczegóły działania generatora     379
    15.2. Rozkłady prawdopodobieństwa     381
      15.2.1. Nazwy funkcji związanych z rozkładami     381
      15.2.2. Wybrane jednowymiarowe rozkłady prawdopodobieństwa     382
      15.2.3. Zmienne losowe wielowymiarowe     386
    15.3. Przykładowe eksperymenty symulacyjne     390
      15.3.1. Badanie mocy testu Shapiro–Wilka     391
      15.3.2. Własności estymatorów parametrów rozkładu Gamma     392
      15.3.3. Całkowanie Monte Carlo     396
      15.3.4. Kroswalidacja klasyfikatora     398
  
  V Zagadnienia zaawansowane    401
  
  16. Zarządzenie środowiskiem R     403
    16.1. Podstawowe informacje     403
      16.1.1. Informacje o środowisku R     403
      16.1.2. Informacje o systemie     406
      16.1.3. Uruchamianie i zamykanie środowiska R     407
      16.1.4. Historia poleceń     408
    16.2. Opcje globalne     408
    16.3. Ustawienia lokalizacyjne     412
    16.4. Rozszerzanie możliwości środowiska R     415
      16.4.1. Instalacja i aktualizacja pakietów     416
      16.4.2. Wywoływanie innych programów     421
    16.5. Zarządzanie pamięcią     422
      16.5.1. Informacja o rozmiarze obiektów     422
      16.5.2. Kopiowanie na żądanie     424
      16.5.3. Automatyczne odśmiecanie pamięci     425
    16.6. Typ podstawowy, tryb a klasa obiektów     425
  
  17. Środowiska     428
    17.1.Środowiska jako zbiory obiektów     428
      17.1.1. Podstawowe operacje na obiektach w środowisku     429
      17.1.2. Środowiska a listy     431
      17.1.3. Przekazywanie środowisk funkcjom     433
    17.2. Wskaźniki na środowiska otaczające     435
      17.2.1. Przypadek ręcznie tworzonych środowisk     435
      17.2.2. ´Ścieżka wyszukiwania     436
      17.2.3. Przestrzenie nazw i środowiska eksportowane przez pakiety     441
  
  18. Syntaktyka i semantyka języka R     442
    18.1. Obiekty reprezentujące wyrażenia języka R     442
      18.1.1. Parser     443
      18.1.2. Cytowanie     446
      18.1.3. Wywołania, czyli wyrażenia złożone     446
    18.2. środowiskowy model obliczeń     451
      18.2.1. Ewaluacja wyrażeń     452
      18.2.2. Bieżące środowisko ewaluacyjne     454
    18.3. Ewaluacja wyrażeń w obrębie funkcji     457
      18.3.1. Lokalne środowiska ewaluacyjne     459
      18.3.2. Środowiska otaczające lokalne środowiska ewaluacyjne     460
      18.3.3. Środowiska wywołujące     464
      18.3.4. Ewaluacja argumentów     465
    18.4. Formuły     471
      18.4.1. Przykłady funkcji stosujących argumenty typu formuła     471
      18.4.2. Formuły jako wywołania     473
      18.4.3. Przetwarzanie formuł     474
  
  19. Programowanie zorientowane obiektowo     476
    19.1. Paradygmaty programowania obiektowego     476
    19.2. Klasy S3     478
      19.2.1. Określanie klasy obiektu     479
      19.2.2. Ekspediowanie metod     479
      19.2.3. Przeciążanie metod     482
    19.3. Klasy S4     483
      19.3.1. Definiowanie klas i tworzenie obiektów     484
      19.3.2. Definiowanie funkcji generycznych i metod     487
    19.4. Klasy referencyjne (RC)     491
    19.5. Specjalne rodzaje funkcji     492
      19.5.1. Funkcje podstawieniowe     492
      19.5.2. Przeciążanie operatorów     494
      19.5.3. Wbudowane grupy funkcji generycznych     495
  
  20. Integracja R i C++ przy użyciu pakietu Rcpp     498
    20.1. Wprowadzenie     499
      20.1.1. Tryby pracy z Rcpp     499
      20.1.2. Podstawy składni języka C++     503
    20.2. Operacje na wektorach atomowych     509
      20.2.1. Dostęp do wektorów     509
      20.2.2. Tworzenie wektorów     512
      20.2.3. Kopiowanie płytkie i głębokie     513
      20.2.4. Braki danych     515
      20.2.5. Przegląd funkcji z R/C API     517
      20.2.6. Przegląd funkcji i metod z pakietu Rcpp     520
    20.3. Operacje na pozostałych typach obiektów     521
      20.3.1. Listy     521
      20.3.2. Funkcje     523
      20.3.3. Atrybuty obiektów     524
      20.3.4. Obiekty typów złożonych     525
      20.3.5. Wskaźniki     527
  
  Bibliografia     532
  Skorowidz     537
RozwińZwiń