#arvud=c(2, 4, 4, 4, 5, 5, 7, 9)
arvud=c(2, 4, 4, 4, 5, 5, 7, 9, 6, 6, 3)
keskmine=mean(arvud)
vahed=arvud-keskmine
vaheruudud=vahed*vahed
ruutudesumma=sum(vaheruudud)
ruutudekeskmine=ruutudesumma/length(arvud)
ruutjuur=sqrt(ruutudekeskmine)
ruutjuur
## [1] 1.858641
standardhalve <- function(arvud){
  keskmine=mean(arvud)
  vahed=arvud-keskmine
  vaheruudud=vahed*vahed
  ruutudesumma=sum(vaheruudud)
  ruutudekeskmine=ruutudesumma/(length(arvud)-1)
  ruutjuur=sqrt(ruutudekeskmine)
  return (ruutjuur)
}

standardhalve(c(3, 5, 4))
## [1] 1
sd(c(3, 5,4))
## [1] 1
kiirused=c(220, 110, 60)
length(kiirused)/sum(1/kiirused)
## [1] 99
#Kaalutud keskmine

hinded=c(5, 3, 4)
ainepunktid=c(6, 2, 3)

sum(hinded*ainepunktid)/sum(ainepunktid)
## [1] 4.363636
#install.packages("tidyverse")
library(tidyverse)
## Loading tidyverse: ggplot2
## Loading tidyverse: tibble
## Loading tidyverse: tidyr
## Loading tidyverse: readr
## Loading tidyverse: purrr
## Loading tidyverse: dplyr
## Conflicts with tidy packages ----------------------------------------------
## filter(): dplyr, stats
## lag():    dplyr, stats
hinneteleht=tibble(
  ained=c("matemaatika", "filosoofia", "keemia"),
  hinded=c(5, 3, 4),
  ainepunktid=c(6, 2, 3)
)

hinneteleht
## # A tibble: 3 x 3
##         ained hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1 matemaatika      5           6
## 2  filosoofia      3           2
## 3      keemia      4           3
#leht2=edit(hinneteleht)
hinneteleht$ained
## [1] "matemaatika" "filosoofia"  "keemia"
hinneteleht$hinded
## [1] 5 3 4
hinneteleht[, 2]
## # A tibble: 3 x 1
##   hinded
##    <dbl>
## 1      5
## 2      3
## 3      4
hinneteleht[, 2:3]
## # A tibble: 3 x 2
##   hinded ainepunktid
##    <dbl>       <dbl>
## 1      5           6
## 2      3           2
## 3      4           3
hinneteleht[hinneteleht$hinded<5, 2:3]
## # A tibble: 2 x 2
##   hinded ainepunktid
##    <dbl>       <dbl>
## 1      3           2
## 2      4           3
hinneteleht[["ained"]]
## [1] "matemaatika" "filosoofia"  "keemia"
hinneteleht["ained"]
## # A tibble: 3 x 1
##         ained
##         <chr>
## 1 matemaatika
## 2  filosoofia
## 3      keemia
hinneteleht[c("ained", "hinded")]
## # A tibble: 3 x 2
##         ained hinded
##         <chr>  <dbl>
## 1 matemaatika      5
## 2  filosoofia      3
## 3      keemia      4
hinneteleht[["ained"]][2]
## [1] "filosoofia"
filter(hinneteleht, hinded>3)
## # A tibble: 2 x 3
##         ained hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1 matemaatika      5           6
## 2      keemia      4           3
filter(hinneteleht, hinded>3, ained=="keemia")
## # A tibble: 1 x 3
##    ained hinded ainepunktid
##    <chr>  <dbl>       <dbl>
## 1 keemia      4           3
#Kuva rohkem kui kolmepunktised ained
filter(hinneteleht, ainepunktid>3)
## # A tibble: 1 x 3
##         ained hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1 matemaatika      5           6
hinneteleht %>% filter(ainepunktid>2) %>% filter(hinded<5)
## # A tibble: 1 x 3
##    ained hinded ainepunktid
##    <chr>  <dbl>       <dbl>
## 1 keemia      4           3
hinneteleht %>% filter(ainepunktid %in% c(2, 3) )
## # A tibble: 2 x 3
##        ained hinded ainepunktid
##        <chr>  <dbl>       <dbl>
## 1 filosoofia      3           2
## 2     keemia      4           3
arrange(hinneteleht, ainepunktid)
## # A tibble: 3 x 3
##         ained hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1  filosoofia      3           2
## 2      keemia      4           3
## 3 matemaatika      5           6
arrange(hinneteleht, -ainepunktid)
## # A tibble: 3 x 3
##         ained hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1 matemaatika      5           6
## 2      keemia      4           3
## 3  filosoofia      3           2
#kuvage alla kuuepunktised ained hinnete kasvavas järjekorras

arrange(filter(hinneteleht, ainepunktid<6), hinded)
## # A tibble: 2 x 3
##        ained hinded ainepunktid
##        <chr>  <dbl>       <dbl>
## 1 filosoofia      3           2
## 2     keemia      4           3
hinneteleht %>% filter(ainepunktid<6) %>% arrange(hinded)
## # A tibble: 2 x 3
##        ained hinded ainepunktid
##        <chr>  <dbl>       <dbl>
## 1 filosoofia      3           2
## 2     keemia      4           3
select(hinneteleht, ained, ainepunktid)
## # A tibble: 3 x 2
##         ained ainepunktid
##         <chr>       <dbl>
## 1 matemaatika           6
## 2  filosoofia           2
## 3      keemia           3
select(hinneteleht, -ained) #kõik peale ainete
## # A tibble: 3 x 2
##   hinded ainepunktid
##    <dbl>       <dbl>
## 1      5           6
## 2      3           2
## 3      4           3
#Kuva ained, mille ainepunkte on alla kuue
hinneteleht %>% filter(ainepunktid<6) %>% select(ained)
## # A tibble: 2 x 1
##        ained
##        <chr>
## 1 filosoofia
## 2     keemia
select(hinneteleht, contains("t")) #t-d sisaldavad tulbad
## # A tibble: 3 x 1
##   ainepunktid
##         <dbl>
## 1           6
## 2           2
## 3           3
rename(hinneteleht, ainenimed=ained)
## # A tibble: 3 x 3
##     ainenimed hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1 matemaatika      5           6
## 2  filosoofia      3           2
## 3      keemia      4           3
select(hinneteleht, ainepunktid, everything())
## # A tibble: 3 x 3
##   ainepunktid       ained hinded
##         <dbl>       <chr>  <dbl>
## 1           6 matemaatika      5
## 2           2  filosoofia      3
## 3           3      keemia      4
mutate(hinneteleht, vanadpunktid=round(2*ainepunktid/1.5)/2)
## # A tibble: 3 x 4
##         ained hinded ainepunktid vanadpunktid
##         <chr>  <dbl>       <dbl>        <dbl>
## 1 matemaatika      5           6          4.0
## 2  filosoofia      3           2          1.5
## 3      keemia      4           3          2.0
#Koosta ja lisa tulp, mille sisuks hinnete ja ainepunktide korrutis
mutate(hinneteleht, korrutis=hinded*ainepunktid)
## # A tibble: 3 x 4
##         ained hinded ainepunktid korrutis
##         <chr>  <dbl>       <dbl>    <dbl>
## 1 matemaatika      5           6       30
## 2  filosoofia      3           2        6
## 3      keemia      4           3       12
transmute(hinneteleht, korrutis=hinded*ainepunktid)
## # A tibble: 3 x 1
##   korrutis
##      <dbl>
## 1       30
## 2        6
## 3       12
mutate(hinneteleht, punktekoos=cumsum(ainepunktid))
## # A tibble: 3 x 4
##         ained hinded ainepunktid punktekoos
##         <chr>  <dbl>       <dbl>      <dbl>
## 1 matemaatika      5           6          6
## 2  filosoofia      3           2          8
## 3      keemia      4           3         11
leht3=add_row(hinneteleht, ained="astroloogia", ainepunktid=3, hinded=0)
leht3
## # A tibble: 4 x 3
##         ained hinded ainepunktid
##         <chr>  <dbl>       <dbl>
## 1 matemaatika      5           6
## 2  filosoofia      3           2
## 3      keemia      4           3
## 4 astroloogia      0           3
as.numeric(leht3$hinded>0)*leht3$ainepunktid
## [1] 6 2 3 0
mutate(leht3, punktekoos=cumsum(ainepunktid*(hinded>0)))
## # A tibble: 4 x 4
##         ained hinded ainepunktid punktekoos
##         <chr>  <dbl>       <dbl>      <dbl>
## 1 matemaatika      5           6          6
## 2  filosoofia      3           2          8
## 3      keemia      4           3         11
## 4 astroloogia      0           3         11
leht3 %>% group_by(ainepunktid) %>% summarise(keskminehinne=mean(hinded))
## # A tibble: 3 x 2
##   ainepunktid keskminehinne
##         <dbl>         <dbl>
## 1           2             3
## 2           3             2
## 3           6             5
#Lisage iga erineva ainepunktide arvu juurde ka suurim ja vähim hinne

leht3 %>% group_by(ainepunktid) %>% 
  summarise(keskminehinne=mean(hinded), suurim=max(hinded), v2him=min(hinded))
## # A tibble: 3 x 4
##   ainepunktid keskminehinne suurim v2him
##         <dbl>         <dbl>  <dbl> <dbl>
## 1           2             3      3     3
## 2           3             2      4     0
## 3           6             5      5     5
leht3 %>% group_by(ainepunktid) %>% 
  summarise(keskminehinne=mean(hinded), suurim=max(hinded), v2him=min(hinded)) %>%
  arrange(desc(v2him))
## # A tibble: 3 x 4
##   ainepunktid keskminehinne suurim v2him
##         <dbl>         <dbl>  <dbl> <dbl>
## 1           6             5      5     5
## 2           2             3      3     3
## 3           3             2      4     0
#install.packages("rmarkdown")