tekst="Juku tuli kooli"
strsplit(tekst, "")[[1]]
## [1] "J" "u" "k" "u" " " "t" "u" "l" "i" " " "k" "o" "o" "l" "i"
table(strsplit(tekst, "")[[1]])
##
## i J k l o t u
## 2 2 1 2 2 2 1 3
library(tidyverse)
## -- Attaching packages ----------------------------------------------------- tidyverse 1.2.1 --
## <U+221A> ggplot2 3.0.0 <U+221A> purrr 0.2.5
## <U+221A> tibble 1.4.2 <U+221A> dplyr 0.7.6
## <U+221A> tidyr 0.8.1 <U+221A> stringr 1.3.1
## <U+221A> readr 1.1.1 <U+221A> forcats 0.3.0
## -- Conflicts -------------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
str_split(tekst, "")
## [[1]]
## [1] "J" "u" "k" "u" " " "t" "u" "l" "i" " " "k" "o" "o" "l" "i"
unique(str_split(tekst, "")[[1]])
## [1] "J" "u" "k" " " "t" "l" "i" "o"
tibble(taht=str_split(tekst, "")[[1]])
## # A tibble: 15 x 1
## taht
## <chr>
## 1 J
## 2 u
## 3 k
## 4 u
## 5 " "
## 6 t
## 7 u
## 8 l
## 9 i
## 10 " "
## 11 k
## 12 o
## 13 o
## 14 l
## 15 i
tibble(taht=str_split(str_to_lower(tekst), "")[[1]]) %>% group_by(taht) %>%
summarise(kogus=n()) %>% arrange(-kogus)
## # A tibble: 8 x 2
## taht kogus
## <chr> <int>
## 1 u 3
## 2 " " 2
## 3 i 2
## 4 k 2
## 5 l 2
## 6 o 2
## 7 j 1
## 8 t 1
read_file("http://minitorn.tlu.ee/~jaagup/kool/java/kursused/18/r/juhend.txt")
## [1] "Kursusel tulemuse kirja saamiseks tarvilik\r\n\r\n* Märksõnade paarid filmi andmebaasis 13.09\r\n* Arvutused + joonis filmiandmestiku põhjal 04.10\r\n* Võrgustiku uuring filmiandmestiku põhjal 18.10\r\n* Jaotused ja tõenäosusfunktsioonid 18.10\r\n* Rühmade arvulised võrdlused (T-test ja ANOVA) 08.11\r\n* Shiny interaktiivsed joonised filmibaasi põhjal 15.11\r\n\r\nSelgitusi\r\n\r\n* Märksõnade paarid filmi andmebaasis \r\n\r\nFilmirühma (näiteks etteantud aastakümnes tehtud filmide) puhul sama filmi juures koos kasutatud märksõnade paarid järjestatuna paaride sageduse järgi\r\n\r\n\r\n* Arvutused + joonis filmiandmestiku põhjal \r\n\r\nKeerukus vastavalt võimetele. Võib olla ülevaade ühe tabeli \r\nandmete põhjal, aga põnevad avastused alati oodatud. \r\nVäljund soovitavalt R Markdowni abil\r\n\r\n* Võrgustiku uuring filmiandmestiku põhjal\r\n\r\nNäiteid: märksõnade koosesinemine, filmid ja festivalid, \r\nnäitlejad ja filmid, ajatelg.\r\nVaja katsetada, kuidas andmehulka piirata, et tulemus loetav oleks\r\nTemaatiline esitlus (2-5 minutit) + seletus, kuidas see koostati\r\n\r\n* Jaotused ja tõenäosusfunktsioonid\r\n\r\nNormaaljaotus, binoomjaotus, poisooni jaotus\r\nrnorm, pnorm, qnorm, pbinom, ppois\r\n\r\n* Rühmade arvulised võrdlused (T-test ja ANOVA)\r\n\r\nSoovitavalt keeleandmestiku põhjal. Andmestiku üldine tutvustus arvude ja jooniste abil.\r\nKahe arvukogumi võrdlus T-testi abil, juurde seletavad laused\r\nJaotuse sõltuvus rühmast ANOVA abil, juurde seletavad laused, karpdiagramm\r\nVõimalusel MANOVA\r\nEsitus soovitavalt R Markdowni abil loodud HTML-leht\r\n\r\n* Shiny interaktiivsed joonised filmibaasi põhjal\r\n\r\nKasutaja sisestusest/valikust sõltuvad joonised Shiny veebilehel\r\n\r\n\r\njaagup@tlu.ee"
#Järjestage veebifailis olevad tähed sageduse järgi
tekst= read_file("http://minitorn.tlu.ee/~jaagup/kool/java/kursused/18/r/juhend.txt")
tibble(taht=str_split(str_to_lower(tekst), "")[[1]]) %>% group_by(taht) %>%
summarise(kogus=n()) %>% arrange(-kogus)
## # A tibble: 46 x 2
## taht kogus
## <chr> <int>
## 1 " " 259
## 2 a 152
## 3 i 118
## 4 s 112
## 5 e 110
## 6 t 96
## 7 u 84
## 8 l 75
## 9 d 71
## 10 o 61
## # ... with 36 more rows
list.files("d:/r/1115/uuritavad")
## [1] "juhend_r.txt" "juhend_veebiraamistikud.txt"
## [3] "Puu2.java" "Puu4.java"
tahtedeSagedused <- function(failinimi){
tekst= read_file(failinimi)
vastus=tibble(taht=str_split(str_to_lower(tekst), "")[[1]]) %>% group_by(taht) %>%
summarise(kogus=n())
return (vastus)
}
print(tahtedeSagedused("d:/r/1115/uuritavad/Puu2.java"))
## # A tibble: 49 x 2
## taht kogus
## <chr> <int>
## 1 - 1
## 2 " " 130
## 3 "\n" 31
## 4 "\"" 2
## 5 ( 38
## 6 ) 38
## 7 * 1
## 8 , 20
## 9 . 32
## 10 ; 16
## # ... with 39 more rows
kaust="d:/r/1115/uuritavad/"
tabel1=tahtedeSagedused(paste(kaust, "Puu2.java", sep=""))
tabel2=tahtedeSagedused(paste(kaust, "juhend_r.txt", sep=""))
colnames(tabel2)=c("taht", "juhend_r.txt")
tabel1 %>% full_join(tabel2, by="taht") %>% replace(., is.na(.), 0)
## # A tibble: 59 x 3
## taht kogus juhend_r.txt
## <chr> <dbl> <dbl>
## 1 - 1 5
## 2 " " 130 259
## 3 "\n" 31 0
## 4 "\"" 2 0
## 5 ( 38 4
## 6 ) 38 4
## 7 * 1 12
## 8 , 20 16
## 9 . 32 12
## 10 ; 16 0
## # ... with 49 more rows
# tabel1 %>% left_join(tabel2 %>% rename(juhend_r=kogus), by="taht")
kaust="d:/r/1115/uuritavad/"
failinimed=list.files(kaust)
koos=tahtedeSagedused(paste(kaust, failinimed[1], sep=""))
colnames(koos)=c("taht", failinimed[1])
for(failinimi in failinimed[2:length(failinimed)]){
tabel=tahtedeSagedused(paste(kaust, failinimi, sep=""))
colnames(tabel)=c("taht", failinimi)
koos=koos %>% full_join(tabel, by="taht")
}
koos=koos %>% replace(., is.na(.), 0)
print(koos)
## # A tibble: 63 x 5
## taht juhend_r.txt juhend_veebiraamistikud.txt Puu2.java Puu4.java
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 - 5 3 1 2
## 2 " " 259 262 130 380
## 3 "\r\n" 47 29 0 0
## 4 ( 4 0 38 77
## 5 ) 4 0 38 77
## 6 * 12 5 1 2
## 7 , 16 4 20 46
## 8 . 12 22 32 52
## 9 / 1 2 0 8
## 10 : 1 4 0 3
## # ... with 53 more rows
arvud=koos %>% select(-taht)
t(arvud)
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
## juhend_r.txt 5 259 47 4 4 12 16 12 1
## juhend_veebiraamistikud.txt 3 262 29 0 0 5 4 22 2
## Puu2.java 1 130 0 38 38 1 20 32 0
## Puu4.java 2 380 0 77 77 2 46 52 8
## [,10] [,11] [,12] [,13] [,14] [,15] [,16]
## juhend_r.txt 1 1 3 6 11 1 1
## juhend_veebiraamistikud.txt 4 1 0 13 35 9 5
## Puu2.java 0 0 0 13 10 12 11
## Puu4.java 3 0 3 47 34 15 10
## [,17] [,18] [,19] [,20] [,21] [,22] [,23]
## juhend_r.txt 1 2 3 1 152 14 71
## juhend_veebiraamistikud.txt 4 1 2 5 114 20 40
## Puu2.java 1 2 0 2 46 4 21
## Puu4.java 8 9 0 0 125 27 63
## [,24] [,25] [,26] [,27] [,28] [,29] [,30]
## juhend_r.txt 110 16 12 23 118 40 41
## juhend_veebiraamistikud.txt 140 4 14 8 128 15 66
## Puu2.java 36 7 13 11 45 7 4
## Puu4.java 153 9 32 31 119 22 34
## [,31] [,32] [,33] [,34] [,35] [,36] [,37]
## juhend_r.txt 75 54 59 61 22 1 48
## juhend_veebiraamistikud.txt 52 47 54 52 21 0 54
## Puu2.java 14 8 39 18 49 0 17
## Puu4.java 89 26 95 87 86 0 65
## [,38] [,39] [,40] [,41] [,42] [,43] [,44]
## juhend_r.txt 112 96 84 43 2 25 12
## juhend_veebiraamistikud.txt 85 86 49 33 0 9 9
## Puu2.java 30 30 24 6 8 0 0
## Puu4.java 103 98 85 32 18 0 0
## [,45] [,46] [,47] [,48] [,49] [,50] [,51]
## juhend_r.txt 8 3 0 0 0 0 0
## juhend_veebiraamistikud.txt 2 1 1 1 2 12 0
## Puu2.java 0 9 0 1 10 0 31
## Puu4.java 0 14 0 1 28 0 81
## [,52] [,53] [,54] [,55] [,56] [,57] [,58]
## juhend_r.txt 0 0 0 0 0 0 0
## juhend_veebiraamistikud.txt 0 0 0 0 0 0 0
## Puu2.java 2 16 1 1 7 7 4
## Puu4.java 8 45 1 1 16 16 22
## [,59] [,60] [,61] [,62] [,63]
## juhend_r.txt 0 0 0 0 0
## juhend_veebiraamistikud.txt 0 0 0 0 0
## Puu2.java 1 1 11 0 0
## Puu4.java 1 4 10 3 1
koos$taht
## [1] "-" " " "\r\n" "(" ")" "*" "," "." "/" ":"
## [11] "@" "+" "0" "1" "2" "3" "4" "5" "8" "9"
## [21] "a" "b" "d" "e" "f" "g" "h" "i" "j" "k"
## [31] "l" "m" "n" "o" "p" "q" "r" "s" "t" "u"
## [41] "v" "w" "õ" "ä" "ü" "y" "6" "7" "c" "ö"
## [51] "\n" "\"" ";" "[" "]" "{" "}" "=" ">" "z"
## [61] "x" "<e4>" "<fc>"
failiandmed=t(arvud)
failiandmed
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
## juhend_r.txt 5 259 47 4 4 12 16 12 1
## juhend_veebiraamistikud.txt 3 262 29 0 0 5 4 22 2
## Puu2.java 1 130 0 38 38 1 20 32 0
## Puu4.java 2 380 0 77 77 2 46 52 8
## [,10] [,11] [,12] [,13] [,14] [,15] [,16]
## juhend_r.txt 1 1 3 6 11 1 1
## juhend_veebiraamistikud.txt 4 1 0 13 35 9 5
## Puu2.java 0 0 0 13 10 12 11
## Puu4.java 3 0 3 47 34 15 10
## [,17] [,18] [,19] [,20] [,21] [,22] [,23]
## juhend_r.txt 1 2 3 1 152 14 71
## juhend_veebiraamistikud.txt 4 1 2 5 114 20 40
## Puu2.java 1 2 0 2 46 4 21
## Puu4.java 8 9 0 0 125 27 63
## [,24] [,25] [,26] [,27] [,28] [,29] [,30]
## juhend_r.txt 110 16 12 23 118 40 41
## juhend_veebiraamistikud.txt 140 4 14 8 128 15 66
## Puu2.java 36 7 13 11 45 7 4
## Puu4.java 153 9 32 31 119 22 34
## [,31] [,32] [,33] [,34] [,35] [,36] [,37]
## juhend_r.txt 75 54 59 61 22 1 48
## juhend_veebiraamistikud.txt 52 47 54 52 21 0 54
## Puu2.java 14 8 39 18 49 0 17
## Puu4.java 89 26 95 87 86 0 65
## [,38] [,39] [,40] [,41] [,42] [,43] [,44]
## juhend_r.txt 112 96 84 43 2 25 12
## juhend_veebiraamistikud.txt 85 86 49 33 0 9 9
## Puu2.java 30 30 24 6 8 0 0
## Puu4.java 103 98 85 32 18 0 0
## [,45] [,46] [,47] [,48] [,49] [,50] [,51]
## juhend_r.txt 8 3 0 0 0 0 0
## juhend_veebiraamistikud.txt 2 1 1 1 2 12 0
## Puu2.java 0 9 0 1 10 0 31
## Puu4.java 0 14 0 1 28 0 81
## [,52] [,53] [,54] [,55] [,56] [,57] [,58]
## juhend_r.txt 0 0 0 0 0 0 0
## juhend_veebiraamistikud.txt 0 0 0 0 0 0 0
## Puu2.java 2 16 1 1 7 7 4
## Puu4.java 8 45 1 1 16 16 22
## [,59] [,60] [,61] [,62] [,63]
## juhend_r.txt 0 0 0 0 0
## juhend_veebiraamistikud.txt 0 0 0 0 0
## Puu2.java 1 1 11 0 0
## Puu4.java 1 4 10 3 1
dist(failiandmed)
## juhend_r.txt juhend_veebiraamistikud.txt
## juhend_veebiraamistikud.txt 99.05554
## Puu2.java 278.61263 255.13330
## Puu4.java 236.17578 235.90888
## Puu2.java
## juhend_veebiraamistikud.txt
## Puu2.java
## Puu4.java 366.51876
asukohad=cmdscale(dist(failiandmed), 2 )
class(asukohad)
## [1] "matrix"
plot(asukohad)
as_tibble(asukohad) %>% add_column(fnimed=rownames(asukohad)) %>%
ggplot(aes(V1, V2, label=fnimed)) + geom_text()
asukohad=cmdscale(dist(scale(failiandmed)), 2 )
as_tibble(asukohad) %>% add_column(fnimed=rownames(asukohad)) %>%
ggplot(aes(V1, V2, label=fnimed)) + geom_text()
failiandmed=t(scale(arvud))
asukohad=cmdscale(dist(failiandmed), 2 )
as_tibble(asukohad) %>% add_column(fnimed=rownames(asukohad)) %>%
ggplot(aes(V1, V2, label=fnimed)) + geom_text()