####################################################################################### ################ Cvičení 1 - Pravděpodobnost a statistika ############################# ############################ Adéla Vrtková ############################################ ####################################################################################### # jednoduché početní operace 2+4 5/2 # POZOR na závorky! Pro počítání se používají pouze kulaté! Hranaté a složené mají v R jinou funkci! (((10+2)*(340-33))-2)/3 ## kombinační číslo, faktoriály choose(10,2) factorial(4) ####################################################################################### # datové typy -> numeric, character, logical, (complex) # funkcí class zjišťujeme typ objektu a=2+3 class(a) b="pismenko" class(b) c=(1>3) class(c) d=3+1i class(d) ####################################################################################### ## datové struktury v R # vector (rozumíme sloupcový vektor) # factor (speciální případ vektoru) # matrix (matice s rozměry n x m) # data.frame (datový rámec s rozměry n x p) # list (seznam) ####################################################################################### ## definování vektoru (sloupcový=column) a = c(3,4,6,7) a <- c(3,4,6,7) a[2] #další možnosti rep(1,4) # vytvoří vektor se čtyřmi jedničkami seq(1,10,2) #posloupnost od 1 do 10 s krokem 2 1:10 #posloupnost od 1 do 10 s krokem 1 b=c("A","B","C","D") class(b) #předefinování objektu na jiný typ - např. as.vector, as.matrix, as.factor,... b=as.factor(b) #práce s vektory - slučování podle sloupců/řádků cbind(a,b) rbind(a,b) ####################################################################################### ## definování matice A=matrix(c(3,4,6,7,3,2),nrow=2,ncol=3) B=matrix(c(3,4,6,7,3,2),nrow=2,ncol=3,byrow=TRUE) C=matrix(c(3,4,6,7,3,2),nrow=3,ncol=2) A[1,3] A[1,] A[,2:3] #diagonální matice diag(4) diag(4,2) ## operace s maticemi - pozor na maticové násobení -> %*% A+B A-B A*B A%*%C ####################################################################################### ## datový rámec - získáme (většinou) importováním dat ze souboru (csv, txt, xls,...) # POZOR! nezbytné nastavení pracovního adresáře (working directory) getwd() setwd("C:/Users/Adéla/Desktop/Výuka/Statistika/Skripty") data=read.csv2("akumulatory.csv",header=TRUE,skip=1) data=read.csv2("C:/Users/Adéla/Desktop/Výuka/Statistika/Skripty/akumulatory.csv",header=TRUE,skip=1) data=read.csv2(file="http://am-nas.vsb.cz/lit40/DATA/aku.csv") rownames(data) colnames(data) data[["Výrobce.A"]] data$Výrobce.A ###################################################################################### # definování vlastní funkce - nazev <- function(proměnné){.......} funkce <- function(x,y){ (x^2)+(y^2) } funkce(10,15) # napr. vlastni funkce pro variace s/bez opakovani Varbezopak <- function(n,k){ factorial(n)/factorial(n-k) } Varsopak <- function(n,k){ n^k } Varbezopak(9,3) Varsopak(10,3) ## Shrnutí, doporučení, rady # 1. pozor na závorky -> ( ) při počítání, [ ] odkazují na prvek ve vektoru/matici/data.framu, { } používají se při cyklech # 2. brát v úvahu typ objektu # 3. používat nápovědu - např. ?seq, nebo help(matrix) # 4. nastavení Working Directory # 5. pozor na mezery v názvu proměnných, rozlišování velkých a malých písmen