Code
knitr::opts_chunk$set(
echo = TRUE,
message = FALSE,
warning = FALSE
)V nižšie uvedenom Chunku je urobené základné globálne nastavenie Chunkov v celom Notebooku.
knitr::opts_chunk$set(
echo = TRUE,
message = FALSE,
warning = FALSE
)Tento notebook demonštruje základné operácie v jazyku R aplikované na tému štátneho rozpočtu, so zameraním na:
Tam, kde je to užitočné, sú zahrnuté malé cvičenia s vymyslenými dátami pripomínajúcimi slovenské reálie.
# Priradenie hodnôt (v mld. eur) pre fiktívny návrh rozpočtu
prijmy <- 21.5
vydavky <- 25.8
# Aritmetika
saldo <- prijmy - vydavky # deficit (ak je záporný)
podiel_prijmov_na_vydavkoch <- prijmy / vydavky # miera krytia výdavkov príjmami
saldo_na_obyvatela <- (saldo * 10^9) / 5.4 * 10^-6 # Približný prepočet na obyvateľa
saldo; podiel_prijmov_na_vydavkoch[1] -4.3
[1] 0.8333333
round(saldo_na_obyvatela) # zaokrúhlené na celé eurá[1] -796
Predpokladajte, že celkové daňové príjmy sú 17.5 mld. eur a nedaňové príjmy 3.2 mld. eur. Vypočítajte, aký percentuálny podiel (zaokrúhlený na 1 desatinné miesto) tvoria daňové príjmy z celkových príjmov (súčtu daňových a nedaňových).
danove <- 17.5
nedanove <- 3.2
celkove <- danove + nedanove
round((danove / celkove) * 100, 1)[1] 84.5
kapitola1 <- "Ministerstvo financií SR"
kapitola2 <- "Ministerstvo školstva SR"
rozhodnutie <- "schválené"
oznam <- paste("Rozpočet pre", kapitola1, "bol", rozhodnutie)
csv_riadok <- paste("Kapitola", "Príjmy", "Výdavky", sep = ";")
kapitola1; oznam; csv_riadok[1] "Ministerstvo financií SR"
[1] "Rozpočet pre Ministerstvo financií SR bol schválené"
[1] "Kapitola;Príjmy;Výdavky"
Zistite počet znakov v názve premennej
oznam.
nchar(oznam)[1] 51
je_deficit <- vydavky > prijmy
splna_maastricht <- (abs(saldo) / 100) < 0.03 # Fiktívne overenie 3% HDP pravidla (predpoklad HDP 100 mld.)
je_deficit[1] TRUE
splna_maastricht[1] FALSE
# Je rozpočet prebytkový ALEBO spĺňa maastrichtské kritérium?
!je_deficit | splna_maastricht[1] FALSE
# Fiktívny vývoj deficitu za 5 rokov (v mld. eur)
deficity <- c(-2.1, -2.5, -3.8, -4.2, -3.5)
roky <- 2020:2024
# Aritmetické operácie
deficity_miliony <- deficity * 1000 # Prepočet na milióny
deficity_miliony[1] -2100 -2500 -3800 -4200 -3500
deficity[1] # Deficit v prvom roku[1] -2.1
deficity[deficity < -3.5] # Výber rokov s deficitom horším ako -3.5 mld[1] -3.8 -4.2
mean(deficity) # Priemerný deficit[1] -3.22
max(deficity) # Najvyšší (v tomto prípade najmenej záporný) deficit[1] -2.1
sort(deficity) # Usporiadanie deficitov[1] -4.2 -3.8 -3.5 -2.5 -2.1
Vytvorte vektor
prijmy_rokys hodnotami fiktívnych príjmov za 4 roky: 18, 19.5, 21, 22. Vypočítajte priemerný príjem za toto obdobie.
prijmy_roky <- c(18, 19.5, 21, 22)
mean(prijmy_roky)[1] 20.125
# Matica: Riadky sú roky (2023, 2024), stĺpce sú (Príjmy, Výdavky)
data_rozpocet <- c(20.5, 24.1, 21.5, 25.8)
mat_rozpocet <- matrix(data_rozpocet, nrow = 2, byrow = TRUE)
colnames(mat_rozpocet) <- c("Prijmy", "Vydavky")
rownames(mat_rozpocet) <- c("2023", "2024")
mat_rozpocet Prijmy Vydavky
2023 20.5 24.1
2024 21.5 25.8
# Výpočet salda (Príjmy - Výdavky) po riadkoch.
mat_rozpocet[,1] - mat_rozpocet[,2]2023 2024
-3.6 -4.3
Vytvorte maticu 3x2 s fiktívnymi hodnotami daňových (stĺpec 1) a nedaňových (stĺpec 2) príjmov pre tri rôzne mestá (riadky). Vypočítajte celkové príjmy pre každé mesto (súčet po riadkoch).
mesta_prijmy <- matrix(c(100, 20, 85, 15, 40, 5), nrow = 3, byrow = TRUE)
rowSums(mesta_prijmy)[1] 120 100 45
# Fiktívna korelačná matica výberu rôznych daní (symetrická)
Kor_dane <- matrix(c(1.0, 0.4,
0.4, 1.0),
nrow = 2, byrow = TRUE)
eig_Kor <- eigen(Kor_dane, symmetric = TRUE)
eig_Kor$values[1] 1.4 0.6
eig_Kor$vectors [,1] [,2]
[1,] 0.7071068 -0.7071068
[2,] 0.7071068 0.7071068
Pre fiktívnu variančno-kovariančnú maticu daňových výnosov z troch rôznych regiónov vypočítajte vlastné čísla a vlastné vektory.
| Región | BA | TT | NR |
|---|---|---|---|
| BA | 0.005 |
0.001 |
0.002 |
| TT | 0.001 |
0.003 |
0.001 |
| NR | 0.002 |
0.001 |
0.004 |
# vytvorenie matice
Kov_regiony <- matrix(c(
0.005, 0.001, 0.002,
0.001, 0.003, 0.001,
0.002, 0.001, 0.004
), nrow = 3, byrow = TRUE)
# Vypočítajte vlastné čísla a vlastné vektory a vypíšte ich
eigen_regiony <- eigen(Kov_regiony, symmetric = TRUE)
eigen_regionyeigen() decomposition
$values
[1] 0.007048917 0.002643104 0.002307979
$vectors
[,1] [,2] [,3]
[1,] -0.7369762 0.5910090 -0.3279853
[2,] -0.3279853 -0.7369762 -0.5910090
[3,] -0.5910090 -0.3279853 0.7369762