Pakiety Matematyczne - R Zestaw 1.

Podobne dokumenty
Instalacja Pakietu R

Wprowadzenie do Pakietu R dla kierunku Zootechnika. Dr Magda Mielczarek Katedra Genetyki Uniwersytet Przyrodniczy we Wrocławiu

Podstawy programowania w R - część 1

Funkcje Andrzej Musielak 1. Funkcje

UNIWERSYTET RZESZOWSKI KATEDRA INFORMATYKI

WEKTORY I MACIERZE. Strona 1 z 11. Lekcja 7.

1. Indeksy/indeksowanie : Do elementów wektora, list, macierzy czy ramek, można się odwołać na kilka sposobów.

Podstawowe operacje na macierzach

-Instalacja R: -Instalacja RStudio:

Matlab Składnia + podstawy programowania

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

Metody numeryczne Laboratorium 2

Wprowadzenie do programu Mathcad 15 cz. 1

Liczby całkowite. 1. Liczbą przeciwną do 4 jest liczba: A. 1 4 B. 4 C. 4 D Odczytaj, jakie liczby zaznaczono na osi liczbowej.

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python

Pakiety Matematyczne - R Zestaw 2.

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Tablice mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011

MATLAB - laboratorium nr 1 wektory i macierze

Informatyka w selekcji - Wykªad 1

Programy wykorzystywane do obliczeń

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Obliczenia iteracyjne

Klasa 6. Liczby dodatnie i liczby ujemne

Cw.12 JAVAScript w dokumentach HTML

Modele liniowe i mieszane na przykªadzie analizy danych biologicznych - Wykªad 1

MATrix LABoratory. A C21 delta tvx444 omega_zero. hxx J23 aaa g4534 Fx_38

Autor: Joanna Karwowska

Wykorzystanie programów komputerowych do obliczeń matematycznych

Ćwiczenie 3. MatLab: Algebra liniowa. Rozwiązywanie układów liniowych

GNU Octave (w skrócie Octave) to rozbudowany program do analizy numerycznej.

Diary przydatne polecenie. Korzystanie z funkcji wbudowanych i systemu pomocy on-line. Najczęstsze typy plików. diary nazwa_pliku

Metody i analiza danych

1 Logika. 1. Udowodnij prawa logiczne: 3. (p q) (p q) 2. (p q) ( q p) 2. Sprawdź, czy wyrażenie ((p q) r) (p (q r)) jest tautologią.

JAVAScript w dokumentach HTML - przypomnienie

Programowanie w języku C++ Agnieszka Nowak Brzezińska Laboratorium nr 2

do instrukcja while (wyrażenie);

JAVAScript w dokumentach HTML (1)

1 Funkcje elementarne

Proste programy w C++ zadania

KURS WSPOMAGAJĄCY PRZYGOTOWANIA DO MATURY Z MATEMATYKI ZDAJ MATMĘ NA MAKSA. przyjmuje wartości większe od funkcji dokładnie w przedziale

Algebra Liniowa 2 (INF, TIN), MAP1152 Lista zadań

PONIEDZIAŁEK WTOREK

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Arkusz kalkulacyjny Excel

Wstęp do Programowania Lista 1

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Sprawdzian diagnozujący umiejętności matematyczne z zakresu gimnazjum. Kartoteka

Boisko piłkarskie: stycznia

3 1 + i 1 i i 1 2i 2. Wyznaczyć macierze spełniające własność komutacji: [A, X] = B

Przykład powyżej pokazuje, że w zapytaniu można umieszczać funkcje zarówno zdefiniowane w ramach środowiska, jak również własne.

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Algorytmy i struktury danych

Zadania egzaminacyjne

Warunki logiczne instrukcja if

Matlab Składnia + podstawy programowania

Przykładowe zadania na kółko matematyczne dla uczniów gimnazjum

Autor: Joanna Karwowska

UONET+ moduł Dziennik. Praca z rozkładami materiału nauczania

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.

Zajęcia nr 1 (1h) Dwumian Newtona. Indukcja. Zajęcia nr 2 i 3 (4h) Trygonometria

(a b 1 2); : ( b a + b ab 2 + c ). : a2 2ab+b 2. Politechnika Białostocka KATEDRA MATEMATYKI. Zajęcia fakultatywne z matematyki 2008

PRZYKŁADOWE SKRYPTY (PROGRAMY W MATLABIE Z ROZSZERZENIEM.m): 1) OBLICZANIE WYRAŻEŃ 1:

Metody optymalizacji - wprowadzenie do SciLab a

ROZKŁAD MATERIAŁU DO II KLASY LICEUM (ZAKRES ROZSZERZONY) A WYMAGANIA PODSTAWY PROGRAMOWEJ.

Programowanie Delphi obliczenia, schematy blokowe

A a B b C c D d E e F f są magiczne.

ZBIÓR ZADAŃ Zbiór zadań z programowania w Octave WIL BO Październik 2002

UONET+ moduł Dziennik. Praca z rozkładami materiału nauczania

Temat: Arkusze kalkulacyjne. Program Microsoft Office Excel. Podstawy

WYRAŻENIA ALGEBRAICZNE

Wprowadzenie do programowania w VBA

Katarzyna Bereźnicka Zastosowanie arkusza kalkulacyjnego w zadaniach matematycznych. Opiekun stypendystki: mgr Jerzy Mil

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

PRACA KOŃCOWA Z DYDAKTYKI INFORMATYKI

Podstawy obsługi pakietu GNU octave.

Bazy danych kwerendy (moduł 5) 1. Przekopiuj na dysk F:\ bazę M5KW.mdb z dysku wskazanego przez prowadzącego

Wprowadzenie do środowiska programistycznego R (na podst. 1) R jako kalkulator

PRZETWARZANIE I ORGANIZOWANIE DANYCH: ARKUSZ KALKULACYJNY

( x) Równanie regresji liniowej ma postać. By obliczyć współczynniki a i b należy posłużyć się następującymi wzorami 1 : Gdzie:

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Plan Ćwiczeń. 3) znajdowanie i zmiana kartoteki roboczej polecenia getwd(), setwd()

Wprowadzenie do środowiska

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Ćwiczenie 3: Wprowadzenie do programu Matlab

Algebra macierzy

Lista nr 1 - Liczby zespolone

RACHUNEK MACIERZOWY. METODY OBLICZENIOWE Budownictwo, studia I stopnia, semestr 6. Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska

Ćwiczenie 1. Matlab podstawy (1) Matlab firmy MathWorks to uniwersalny pakiet do obliczeń naukowych i inżynierskich, analiz układów statycznych

PLAN FERII ZIMOWYCH r r. Zajęcia odbywają się w godzinach 09:00-13:00

Zaawansowane metody numeryczne

(mniejszych od 10 9 ) podanych przez użytkownika, wypisze komunikat TAK, jeśli są to liczby bliźniacze i NIE, w przeciwnym przypadku.

Odczyt danych z klawiatury Operatory w Javie

Analiza matematyczna i algebra liniowa Macierze

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Transkrypt:

Pakiety Matematyczne - R Zestaw 1. Zadania z kasynem pochodzą ze strony datacamp.com Instalacja pakietu R Strona główna projektu: http://www.r-project.org/ Instalacja: http://r.meteo.uni.wroc.pl/ (jedno z kilku) GUI RStudio: http://www.rstudio.com/ Szukanie pomocy help("nazwa"),?nazwa wyświetla (jeżeli jest dostępna) pomoc do nazwa example(nazwa) wyświetla i wykonuje (jeżeli są dostępne)przykłady do nazwa apropos("nazwa") wyświetla funkcje zawierające nazwa W programie RStudio pomoc jest wyświetlaną w jednym z okien programu. Skróty klawiszowe dla RStudio Operatory i funkcje elementarne # komentarz x<-y, y->x, x=y przypisanie wartości y do zmiennej x (równoważne sposoby) +, -, *, /, ^ operatory arytmetyczne ==,!=, <=, >=, &&,, TRUE, FALSE operatory relacji i logiczne x %% y reszta z dzielenia x mod y x %/% y część całkowita z dzielenia x przez y sin(x), cos(x), tan(x),..., asin(x),... funkcje trygonometryczne sqrt(x), abs(x), log(x) pierwiastek kwadratowy, wartość bezwzględna, logarytm naturalny Zadanie 0. Zapoznaj się z pomocą do funkcji sin Wykonać polecenie?complex i zapoznać się z odpowiednim tekstem pomocy Odkryć przeznaczenie funkcji: factorial(x), choose(a,b) Zadanie 1. Zdefiniuj zmienną kasyno i przypisz do niej wartość wchodzę.

Wektory W R podstawową strukturą danych jest wektor. Możemy je tworzyć na kilka sposobów np.: 1. a:b liczby całkowite a, a+1, a+2,..., b n <- 10 1:n-1 1:(n-1) #zwróć uwagę na różnicę 2. c(a,b,c,...) tworzy wektor zawierający ciąg a, b, c,... 3. seq(from, to) identyczne z from:to 4. seq(from, to,by=step) tworzy ciąg liczb od from do to z krokiem step 5. rep(x,n) - tworzy n-elementowy wektor o wartościach x Wektory można do siebie dodawać, ale należy czynić to uważnie. Sprawdź jaki będzie wynik działania: rep(2,3)+rep(4,7) Wektory mogą mieć wartości numeryczne, znakowe bądź logiczne integer.vector <- c(1, 2, 3) character.vector <- c("a", "b", "c") logical.vector<-c(true, FALSE, FALSE ) Co się stanie jeśli spróbujemy stworzyć wektor z elementów różnego typu? c("hjh",2,true) c(true,7) Zadanie 2. Od tygodnia jesteś w kasynie. Twoje zwycięstwa i porażki przedstawiono poniżej. Stwórz zmienne poker.wektor oraz bandyta.wektor i przypisz do nich wartości wygranych (jako dodatnie) i przegranych (jako ujemne). Wyświetl oba wektory. Poker W poniedziałek wygrałeś $100 We wtorek przegrałeś $80 W środę wygrałeś $20 W czwartek przegrałeś $120 W piątek wygrałeś $180 W sobotę wygrałeś $30 W niedzielę przegrałeś $90 Jednoręki Bandyta W poniedziałek przegrałeś $110 We wtorek wygrałeś $50 W środę wygrałeś $40 W czwartek przegrałeś $120 W piątek przegrałeś $100 W sobotę wygrałeś $230 W niedzielę przegrałeś $70

Korzystając z funkcji names() możemy przypisywać nazwy elementom wektora. przykladowy_wektor <- c("anna", "Nowak") names(przykladowy_wektor ) <- c("imie", "nazwisko") Zadanie 3. Stwórz wektor dni_tygodnia zawierający nazwy kolejnych dni tygodnia. Następnie korzystając z niego nazwij elementy wektorów poker.wektor i bandyta.wektor. Wyświetl oba wektory. Zadanie 4. a) Ile wygrałeś/przegrałeś każdego dnia łącznie w obu grach? Przypisz wynik do wektora zysk_dzienny b) Ile wyniosła całkowita wygrana/przegrana w poprzednim tygodniu? Wyniki zapisz do zmiennych suma_poker, suma_bandyta, suma_tygodniowa. Skorzystaj z funkcji sum(). c) Sprawdź, czy suma Twoich wygranych w pokera była większa niż suma wygranych w jednorękiego bandytę. wektor[i] - wybieranie i -tego elementu z wektora (zaczynając od 1) wektor[c(i,j,k)] - wybieranie i -tego, j-go i k-go elementu z wektora wektor[i:j] - wybieranie elementów od i -tego do j-go z wektora wektor[ nazwa ] - wybieranie elementu wskazanego przez nazwę z wektora wektor[c( nazwa1, nazwa2 )] - wybieranie elementów wskazanych przez nazwy z wektora mean(wektor) - średnia elementów wektora Zadanie 5. Z wektora poker.wektor wybierz obserwacje a) ze środy czwartku i piątku i zapisz je do wektora srodkowe_poker b) z poniedziałku wtorku i środy i zapisz je do wektora poczatkowe_poker c) z piątku soboty i niedzieli i zapisz je do wektora koncowe_poker Zadanie 6. Oblicz sumy i średnie wektorów z zadania 5 i przypisz je do zmiennych suma_poker_poczatek, sumapoker_srodek, suma_poker_koniec srednia_poker_poczatek, srednia_poker_srodek, srednia_poker_koniec.

Operatory logiczne mogą być używane również na wektorach wektor<-c(1,-8,3,-6) czy_ujemne<-wektor<0 #sprawdzamy, czy elementy wektora są ujemne czy_ujemne #wynikiem jest wektor o wartościach logicznych ujemne=wektor[czy_ujemne] ujemne #możemy też skorzystać z funkcji which() ktore<-which(wektor!= 3) ktore wektor[ktore] Zadanie 7. Sprawdź, które z elementów wektorów poker.wektor, bandyta.wektor są dodatnie. Wyniki tego sprawdzenia zapisz do wektorów o wartościach logicznych czy_ wygrana_poker, czy_ wygrana_bandyta i wyświetl te wektory. Stwórz wektory wygrane_poker, wygrane_bandyta które zawierają tylko wartości dodatnie. Zadanie 8. Korzystając z funkcji rep utwórz wektory: x - ciąg liczb: 1, 2, 3 powtórzony 26 razy y - ciąg liczb: 1, 1, 2, 2, 3, 3 powtórzony 13 razy z - ciąg liczb: 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4 o długości 100 w = c(3,5,1,7,3,9,2,6) order(w) w[order(w)] sort(w) cumsum(w) diff(w) Macierze Macierze możemy tworzyć za pomocą polecenia matrix(data,nrow,ncol). Na przykład matrix(0,3,3) matrix(0,nrow=3,ncol=3) matrix(1,3,3)

matrix(c(1,2,3,4,5,6,7,8,9),3,3) matrix(1:9,3,3,byrow=true) Parametr data oznacza elementy macierzy (domyślnie kolumnami). Inne funkcje tworzące macierze: diag(x), lower.tri(x), upper.tri(x) Aby dostać się do wybranych elementów macierzy używamy operatora [] M = matrix(2:16,5,3) M[1] M[4] M[13] M[1,1] M[2,1] M[3,3] M[3,] M[,3] M[c(1,4,13)] M Przypisanie realizujemy w podobnie: M <- matrix(1:15,5,3) M[1] <- 0 M[3,3] <- 0 M[5,] <- c(-1-1 -1) M[2:3,1:2] <- 99 M Niektóre funkcje, które można zastosować na wektorach/macierzach: 1. operatory arytmetyczne i logiczne 2. length(m) liczba elementów wektora/macierzy 3. dim(m) wymiar macierzy 4. min(m), max(m), mean(m), sum(m) element minimalny, element maksymalny, średnia, suma 5. sort(m), sort(m,decreasing=true) sortowanie rosnąco sortowanie malejąco Inne polecenia warte uwagi: rev, cumsum, prod, cumpod, which.max, summary, rbind, cbind M = matrix(2:16,5,3)

apply(m,1,sum) # suma elementów w wierszach apply(m,2,min) # najmniejszy element w kolumnach colsums(m) # suma w kolumnach, podobnie wiersze rowmeans(m) # średnia w wierszach, podobnie w kolumnach rbind(m) # łączenie macierzy wierszami cbind(m) # łączenie macierzy wierszami Zadanie 9. Utwórz macierze: M1 - jednostkową 4x4, M2 - diagonalną o wyrazach: 5,44,3,22,1 na diagonali M3 - której pierwszy wiersz stanowi wektor poczatkowe_poker, drugi srodkowe_poker, a trzeci koncowe_poker. M4 - której pierwszą kolumnę stanowi wektor poker.wektor, a drugą bandyta.wektor Znajdź: długość, element najmniejszy, element największy, wartość średnią i sumę elementów dla tych macierzy. Wykonać summary(m4). Jak działa funkcja summary?