Mimo iż język R nie jest zbyt popularny wśród programistów, w świecie analizy danych jest praktycznie numerem jeden lub na równi z Pythonem. W języku R, wektory są jednym z podstawowych typów danych z jakimi się spotkasz na każdym kroku. Zobacz podstawowe operacje na wektorach w R aby posługiwać się nimi swobodnie analizując dane.

Czym są wektory w języku R

Wektor jest jednym z podstawowych obiektów w języku programowania jakim jest R. Nie pomylmy wektora w R z wektorem matematycznym.  Można by je przyrównać do tablic (arrays) w innych językach programowania (n.p. Java). Ich cechą jest to, że przechowują dane jednego typy (tak jak ma to miejsce w tablicach Javy) . Wektory mogą przyjmować więcej niż 1 wymiar oraz posiadać inne, dodatkowe atrybuty jak na przykład nazwy (names) dla elementów wektora.

Poznanie wektorów w R jest bardzo istotne. Nie da się swobodnie analizować danych bez poznania tworów jakim są wektory w R.  Wiele funkcji z jakich będziesz korzystać, lub które sam napiszesz będzie używać właśnie wektorów jako zmienne które funkcja będzie przetwarzała w swym ciele , lub będzie wymagała podania parametru który jest wektorem.

Podstawowe zagadnienia dotyczące wektorów w R

Wektory można podzielić na dwie główne grupy.

  • wektory zwane (lub rozpoznawane jako) wektory atomowe przechowujące podstawowe typy danych w R takie jak : logiczne, całkowite , liczby rzeczywiste, znaki (napisy) , liczby zespolone, i bajty.
  • listy

Tworzenie wektorów w R

Najprostszym wektorem w R jest wektor o długości 1.

> liczba <- 10
> is.vector(liczba) 
[1] TRUE

Edytor wyświetlił TRUE czyli wiemy, że zmienna liczba jest wektorem.

Każdy wektor posiada 2 podstawowe właściwości jakimi są : typ i długość

Ty wektora możemy sprawdzić używając funkcji typeof() :

> typeof(letters) # letters to wektor zawierające wszystkie małe litery alfabetu
[1] "character"
> typeof(1:100) # 1:100 oznacza że generujemy wektor liczb od 1 do 100
[1] "integer"

Długość wektora możemy odczytać używając wbudowanej funkcji length() :

> a <- 1:100
> length(a) 
[1] 100

Widzimy, że edytor wyświetlił 100 jako długość wektora a co się zgadza.

wektory w języku R

Typy wektorów atomowych w R

Jak wspomniałem wyżej wektory w R to nie tylko znaki czy liczby. Najważniejsze typy wektorów atomowych (takich typów danych których nie możemy podzielić na mniejsze części składowe)  w języku programowania jakim jest R to między innymi:

Wektory liczbowe w R

Liczby możemy podzielić na całkowite i rzeczywiste. Oba typy nazywamy potocznie typami liczbowymi. Tak samo jest w R. Wektory liczbowe w R to wektory liczb rzeczywistych oraz wektory liczb całkowitych. Podstawowym typem wektora liczbowego w R jest typ rzeczywisty (może pamiętacie, że w większości języków programowania to typ całkowity jest tym podstawowym typem liczbowym) czyli “double“. Możemy to szybko sprawdzić używając poznanej wyżej funkcji typeof() 

> typeof(1)
[1] "double"

Jak widać zwracany typ do double mimo iż wpisaliśmy 1 a nie 1.0. Więc jak zrobić aby otrzymać typ całkowity (“integer”) ? Musimy podać literę L na końcu liczby. Tak “L”. W Javie oznaczałoby to tym long. Zobaczmy więc czy się to zgadza:

> typeof(1L)
[1] "integer"

Zapamiętajmy jeszcze jedną rzecz odnośnie liczb. Liczby całkowite mogą także przyjąć specyficzną wartoś NA (not available – niedostępne, nieobecne) co spotkasz często analizując dane używając języka R. Więcej na temat NA nauczysz się czyszcząc dane do analizy. Tym czasem wiedz, że liczny całkowite mogą przyjąć tą wartość.

Liczby rzeczywiste mają tych wartości więcej bo aż 4 i są to NA, NaN, Inf i -Inf (od słowa infinity czyli nieskończoność ) . Spotkasz się z tym na przykład dzieląc liczby przez zero

Wektory Logiczne w R

Jak może już wiesz z innych dziedzin informatyki , programowania czy logiki, że dwie główne wartości logiczne to TRUE (prawda) i FALSE (fałsz). Te proste dwie wartości nie jeden raz skomplikowały życie wielu studentom głownie przy tworzeniu tak zwanych Tablic Prawdy.

Typy logiczny jest także obecny w R i może przyjmować wyżej wymienione wartości – TRUE i FALSE.  Możliwe jest tworzenie lub otrzymywanie wektorów zawierających wartości logiczne i są to po prostu wektory logiczne.

> odpowiedzi <- c(TRUE, FALSE, FALSE , TRUE , TRUE)
> is.vector(odpowiedzi)
[1] TRUE
> typeof(odpowiedzi)
[1] "logical"

Powyższy kod w języku R stworzył przypisał wektor zawierający 5 wartości logicznych (TRUE, FALSE, FALSE, TRUE, TRUE) do zmiennej odpowiedzi. Sprawdziliśmy czy jest to w ogóle wektor ( is.vector()) i jego typ funkcją typeof() . Jak widzimy środowisko R zwróciło nam wartość “logical” dając nam odpowiedź, że jest to wektor logiczny


Seweryn

Cześć. Mam na imię Seweryn i jestem związany z IT już od lat 90. Jest to moje hobby i stała, która towarzyszy mi i chyba będzie do końca życia. Najbardziej interesują mnie takie dziedziny jak programowanie, bazy danych, analiza danych, web design. Posiadam kilka certyfikatów rozpoznawalnych w "przemyśle IT". M. in. Certified Oracle Java 8 Associate, Certified Amazon Cloud Practitioner, Certified Python Programmer. Mam także Professional Diploma in Digital Marketing oraz Certyfikat Data Analysis for Management z LSE : London School of Economics and Political Science

0 Komentarzy

Dodaj komentarz