# Cviceni c. 8 - zakladni operace v jazyce R, vektory, matice, texty, faktory # 1. # Vyzkousejte rozdily ve vypisech mezi definicemi promenne "a": a <- 2 (a <- 2) # 2. # Definujte nasledujici promenne s danymi hodnotami: # promennou "b" s hodnotou -3 # promennou "p" s hodnotou 1.23 # textovou promennou "t" obsahujici slovo "text" # textovou promennou "s" obsahujici slovo "23" # 3. # Zjistete, v kterem adresari se nachazite. # Zmenete adresar na jiny (napr. Vas domovsky) a pote zpet. # 4. # Zobrazte si napovedu k funkci "log". # a) Spocitejte prirozeny logaritmus cisla 1024. # b) Spocitejte desitkovy logaritmus cisla 1024. # c) Spocitejte logaritmus cisla 1024 o zakladu 2. # 5. # Vytvorte numericky vektor "x" s cisly 2; 4.7; 8; -3.1; -19; 7. # 6. # Vytvorte numericky vektor "y" s komplexnimi cisly 2; 5i; 3 + i; 0.5 - 3.5i. # 7. # Promenne "x" a "y" spojte do promenne "w". # Zjistete delku vektoru "w". # 8. # Vytvorte vektor "z" sloucenim promennych z ukolu c. 2 do jednoho vektoru. # Vytvorte textovy retezec "z.text" z promennych vytvorenych v ukolu c. 2. # Vytvorte list (seznam) "L1" z promennych vytvorenych v ukolu c. 2. # Vytvorte pojmenovany list (seznam) "L2" z promennych vytvorenych v ukolu c. 2, jmena budou odpovidat puvodnim promennym. # 9. # Z listu "L1" a "L2" vypiste 3. slozku. # Vypiste 3. slozku listu "L2" pomoci odkazu na nazev 3. slozky. # 10. # Vypiste seznam definovanych objektu. # Pak nektery z nich smazte a opet vypiste seznam definovanych objektu. # 11. # Vytvorte vektor "x2" obsahujici 10 nahodnych realnych cisel z intervalu [0, 2*pi]. # 12. # Vytvorte: # a) vektor "y1", ktery bude obsahovat hodnoty funkce sinus v bodech x2. # b) vektor "y2", ktery bude obsahovat hodnoty funkce e^x v bodech x2. # c) vektor "y3", ktery bude obsahovat hodnoty funkce x^2 v bodech x2. # 13. # Vytvorte nahodny vektor "x3" delky 10 s hodnotami z intervalu [-5, 2]. # Pote od kazde slozky vektoru "x3" odectete pi a spocitejte 2nasobek noveho vektoru. # 14. # Vytvorte celociselny nahodny vektor "x4" delky 5 s hodnotami z intervalu [2, 8]. # 15. # Do vektoru "p" ulozte posloupnost "p" delky 10 s pocatecni hodnotou 2 a krokem 2.5. # 16. # Do vektoru "q" ulozte posloupnost 3, 2, ..., -2, -3. # 17. # Do vektoru "r1" ulozte 20krat cislo -20. # 18. # Do vektoru "r2" ulozte posloupnost 15 nul a 10 jednicek za sebou (v tomto poradi). # 19. # Do vektoru "r3" delky 30 ulozte 10x za sebou se opakujici posloupnost 0, 2, 5. # 20. # Do vektoru "t" delky 50 ulozte: # * na pozice 1-15 posloupnost 15, 14, ..., 1, # * na pozice 16-30 zaklad prirozenych logaritmu, # * na pozice 31-40 hodnoty prirozeneho logaritmu v bodech posloupnost 0.1, 0.2, ... delky 10, # * na zbyle pozice nahodna cela cisla z intervalu [-3, 5]. # 21. # Vypiste prvky vektoru "t" na sudych pozicich. # 22. # Vypiste prvky vektoru "t" na tech pozicich, ktere jsou beze zbytku delitelne 4. # 23. # Vytvorte textovy vektor "mesta" obsahujici nazvy mest # "Praha", "Brno", "Ostrava", "Plzen", "Olomouc", "Karlovy Vary", "Liberec", "Ceske Budejovice", "Pardubice", "Most". # 24. # Zjistete delku vektoru "mesta". # 24. # Nahodnym vyberem vyberte pet (ne nutne rucnych) nazvu mest z vektoru "mesta". # 25. # Pomoci funkce "sample" vytvorte vektor "A", ktery bude obsahovat 5 nazvu mest z vektoru "mesta", # pritom Praze priradte vahu 10, # Brnu, Ostrave a Plzi vahu 5, # ostatnim mestum vahu 1. # 26. # Pomoci funkci "head" a "tail" ulozte do vektoru "vyber" prvni 4 a posledni 2 mesta z vektoru "mesta". # 27. # Vypiste nazvy mest na lichych pozicich vektoru vznikleho spojenim vektoru "mesta" s nazvem Vaseho bydliste. # 28. # Vytvorte faktor "f" s hodnotami 0, 1, 1, 0, 1, 0, 0, 0, 1. # 29. # Upravte faktor "fact" tak, aby se misto 0 vypisovalo "nepritomen" a misto 1 "pritomen". # 30. # Zobrazte napovedu k funkci "matrix". # 31. # Vytvorte nahodny vektor "v" delky 7 s s celociselnymi hodnotami z intervalu [1, 26]. # Pote vytvorte vektor "w", kde budou cisla z vektoru "v" # prekodovana na mala pismena abecedy (1 = a, 2 = b, ..., 26 = z). # 32. # Vytvorte vektor "v" z posloupnosti od 0 do 19 s krokem 2. # Preskladejte vektor "v" po sloupcich do matice "X" rozmeru 4 x 5. # 33. # Preskladejte vektor "v" po radcich do matice "Y" rozmeru 4 x 5, # pridejte matici "Y" nejake nazvy radku a sloupcu. # 34. # Zjistete rozmery matic "X" a "Y". # Vypiste transponovanou matici k "X". # 35. # Pomoci funkci "rbind" a "cbind" zkousejte matice "X", "Y" a k nim transponovane # spojovat vedle sebe a pod sebe. # 36. # Zkopirujte matici "X" do matice "C" # pozice na lichych radcich a sudych sloupcich "C" nahradte nulami. # 37. # Vypiste 4. sloupec matice "A" ve forme radkoveho/sloupcoveho vektoru. # 38. # Odstrante z matice "A" posledni radek a prvni sloupec. # 39. # Vypiste hlavni diagonalu matice "A". # 40. # Vytvorte ctvercovou diagonalni matici "D" s hlavni diagonalou z matice "A". # 41. # Vytvorte jednotkovou matici "E" radu 5 (tj. rozmeru 5 x 5). # 42. # Vytvorte ctvercovou matici "A" radu 3 z hodnot 2, 0, 0, 2, 2, 1, 1, 1, 2 po radcich. # Spocitejte determinant, vlastni cisla, vlaastni vektory, normu a stopu matice "E". # 43. # Reste system linearnich rovnic "A x = b" s pravu stranou b <- c(2, 1, -1) # 44. # Jednim prikazem spocitejte obsahy kruhu s prumery r <- seq(0.5, 5, by = 0.5)