udaje <- read.csv2("dataEKONOMETRIA.csv",header=TRUE,sep=",",dec=".")
head(udaje)
colnames(udaje)
[1] "Nazov" "Kategoria" "Forma" "ROE" "ROA"
[6] "EBIT" "EBITDAmarza" "M" "Z"
library(ggplot2)
# Scatter plot: vzťah medzi ROA a ROE
ggplot(udaje, aes(x = ROA, y = ROE)) +
geom_point(color = "steelblue", size = 2) + # typ grafu – bodový
theme_minimal() +
labs(
title = "Vzťah medzi ROA a ROE",
x = "Návratnosť aktív (ROA)",
y = "Návratnosť vlastného kapitálu (ROE)"
)

library(ggplot2)
ggplot(udaje, aes(x = factor(Kategoria), y = ROE)) + # Kategoria namiesto YEARS
geom_boxplot(fill = "lightblue", color = "darkblue") + # typ grafu - boxplot
labs(
title = "ROE podľa kategórie firmy",
x = "Kategória",
y = "ROE (návratnosť vlastného kapitálu)"
) +
theme_minimal()

library(dplyr)
library(knitr)
# Základné štatistiky ROE podľa kategórie
roe.stats <- udaje %>%
group_by(Kategoria) %>%
summarise(
n = n(),
mean = mean(ROE, na.rm = TRUE),
sd = sd(ROE, na.rm = TRUE),
min = min(ROE, na.rm = TRUE),
q25 = quantile(ROE, 0.25, na.rm = TRUE),
median = median(ROE, na.rm = TRUE),
q75 = quantile(ROE, 0.75, na.rm = TRUE),
max = max(ROE, na.rm = TRUE),
.groups = "drop"
)
# Vygenerovanie tabuľky
kable(roe.stats, digits = 2, caption = "Základné štatistiky ukazovateľa ROE podľa kategórie firmy")
Základné štatistiky ukazovateľa ROE podľa kategórie
firmy
Kategoria |
n |
mean |
sd |
min |
q25 |
median |
q75 |
max |
1 |
4 |
0.10 |
0.79 |
-0.95 |
-0.16 |
0.20 |
0.46 |
0.94 |
2 |
12 |
0.12 |
0.78 |
-1.84 |
0.03 |
0.08 |
0.78 |
1.00 |
3 |
16 |
0.28 |
0.26 |
0.08 |
0.12 |
0.18 |
0.30 |
0.99 |
4 |
19 |
0.22 |
0.27 |
-0.11 |
0.08 |
0.13 |
0.26 |
1.00 |
5 |
2 |
0.11 |
0.03 |
0.10 |
0.10 |
0.11 |
0.12 |
0.13 |
NA
# ================== Balíčky ==================
library(dplyr)
library(knitr)
library(kableExtra)
# (ak ešte nemáš načítané dáta, odkomentuj)
# udaje <- read.csv("dataEKONOMETRIA.csv", header = TRUE, sep = ";", dec = ",",
# check.names = TRUE, stringsAsFactors = FALSE)
# Pomocná funkcia na výpočet štatistík
calc_stats <- function(df, group_var, value_var) {
df %>%
group_by({{ group_var }}) %>%
summarise(
n = n(),
mean = mean({{ value_var }}, na.rm = TRUE),
sd = sd({{ value_var }}, na.rm = TRUE),
min = min({{ value_var }}, na.rm = TRUE),
q25 = quantile({{ value_var }}, 0.25, na.rm = TRUE),
median = median({{ value_var }}, na.rm = TRUE),
q75 = quantile({{ value_var }}, 0.75, na.rm = TRUE),
max = max({{ value_var }}, na.rm = TRUE),
.groups = "drop"
)
}
# ================== 1) ROE podľa Kategoria ==================
roe_stats <- calc_stats(udaje, Kategoria, ROE)
roe_stats %>%
kable(digits = 2, caption = "Základné štatistiky ROE podľa kategórie") %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "hover", "condensed")) %>%
column_spec(1, bold = TRUE) %>%
row_spec(0, bold = TRUE, background = "#f2f2f2") %>%
add_header_above(c(" " = 2, "ROE – Štatistiky" = 7))
Základné štatistiky ROE podľa kategórie
|
ROE – Štatistiky |
Kategoria |
n |
mean |
sd |
min |
q25 |
median |
q75 |
max |
1 |
4 |
0.10 |
0.79 |
-0.95 |
-0.16 |
0.20 |
0.46 |
0.94 |
2 |
12 |
0.12 |
0.78 |
-1.84 |
0.03 |
0.08 |
0.78 |
1.00 |
3 |
16 |
0.28 |
0.26 |
0.08 |
0.12 |
0.18 |
0.30 |
0.99 |
4 |
19 |
0.22 |
0.27 |
-0.11 |
0.08 |
0.13 |
0.26 |
1.00 |
5 |
2 |
0.11 |
0.03 |
0.10 |
0.10 |
0.11 |
0.12 |
0.13 |
# ================== 2) ROA podľa Forma ==================
roa_stats <- calc_stats(udaje, Forma, ROA)
roa_stats %>%
kable(digits = 2, caption = "Základné štatistiky ROA podľa formy firmy") %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "hover", "condensed")) %>%
column_spec(1, bold = TRUE) %>%
row_spec(0, bold = TRUE, background = "#f2f2f2") %>%
add_header_above(c(" " = 2, "ROA – Štatistiky" = 7))
Základné štatistiky ROA podľa formy firmy
|
ROA – Štatistiky |
Forma |
n |
mean |
sd |
min |
q25 |
median |
q75 |
max |
as |
17 |
0.07 |
0.08 |
0.00 |
0.01 |
0.04 |
0.09 |
0.26 |
sro |
36 |
0.10 |
0.15 |
-0.17 |
0.04 |
0.06 |
0.13 |
0.70 |
NA
# t-test: porovnanie priemerov ROE medzi dvoma formami firiem
t.test.result <- t.test(
ROE ~ Forma, # porovnávame ROE podľa dvoch skupín v stĺpci Forma
data = udaje,
var.equal = FALSE # ak si nie si istá rovnosťou rozptylov
)
t.test.result
Welch Two Sample t-test
data: ROE by Forma
t = -0.0073638, df = 50.356, p-value = 0.9942
alternative hypothesis: true difference in means between group as and group sro is not equal to 0
95 percent confidence interval:
-0.2115588 0.2100130
sample estimates:
mean in group as mean in group sro
0.2027450 0.2035179
anova.result <- aov(ROA ~ Forma, data = udaje)
summary(anova.result)
Df Sum Sq Mean Sq F value Pr(>F)
Forma 1 0.0105 0.01047 0.594 0.444
Residuals 51 0.8985 0.01762
# Lineárna regresia: predikcia ROE na základe ďalších ukazovateľov
model <- lm(ROE ~ ROA + EBITDAmarza + M + Z, data = udaje)
summary(model)
Call:
lm(formula = ROE ~ ROA + EBITDAmarza + M + Z, data = udaje)
Residuals:
Min 1Q Median 3Q Max
-2.26230 -0.07712 -0.01667 0.13934 0.79777
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.001288 0.104697 -0.012 0.990238
ROA 1.820819 0.486836 3.740 0.000491 ***
EBITDAmarza -0.485064 0.416720 -1.164 0.250176
M 0.020364 0.014911 1.366 0.178417
Z -0.016741 0.039112 -0.428 0.670545
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.4191 on 48 degrees of freedom
Multiple R-squared: 0.2362, Adjusted R-squared: 0.1725
F-statistic: 3.71 on 4 and 48 DF, p-value: 0.01037
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3J9CnVkYWplIDwtIHJlYWQuY3N2MigiZGF0YUVLT05PTUVUUklBLmNzdiIsaGVhZGVyPVRSVUUsc2VwPSIsIixkZWM9Ii4iKQpoZWFkKHVkYWplKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCmNvbG5hbWVzKHVkYWplKQpgYGAKYGBge3J9CmxpYnJhcnkoZ2dwbG90MikKCiMgU2NhdHRlciBwbG90OiB2esWlYWggbWVkemkgUk9BIGEgUk9FCmdncGxvdCh1ZGFqZSwgYWVzKHggPSBST0EsIHkgPSBST0UpKSArCiAgZ2VvbV9wb2ludChjb2xvciA9ICJzdGVlbGJsdWUiLCBzaXplID0gMikgKyAgICAgIyB0eXAgZ3JhZnUg4oCTIGJvZG92w70KICB0aGVtZV9taW5pbWFsKCkgKwogIGxhYnMoCiAgICB0aXRsZSA9ICJWesWlYWggbWVkemkgUk9BIGEgUk9FIiwKICAgIHggPSAiTsOhdnJhdG5vc8WlIGFrdMOtdiAoUk9BKSIsCiAgICB5ID0gIk7DoXZyYXRub3PFpSB2bGFzdG7DqWhvIGthcGl0w6FsdSAoUk9FKSIKICApCgpgYGAKYGBge3J9CmxpYnJhcnkoZ2dwbG90MikKCmdncGxvdCh1ZGFqZSwgYWVzKHggPSBmYWN0b3IoS2F0ZWdvcmlhKSwgeSA9IFJPRSkpICsgICAgICAgICMgS2F0ZWdvcmlhIG5hbWllc3RvIFlFQVJTCiAgZ2VvbV9ib3hwbG90KGZpbGwgPSAibGlnaHRibHVlIiwgY29sb3IgPSAiZGFya2JsdWUiKSArICAgICMgdHlwIGdyYWZ1IC0gYm94cGxvdAogIGxhYnMoCiAgICB0aXRsZSA9ICJST0UgcG9kxL5hIGthdGVnw7NyaWUgZmlybXkiLAogICAgeCA9ICJLYXRlZ8OzcmlhIiwKICAgIHkgPSAiUk9FIChuw6F2cmF0bm9zxaUgdmxhc3Ruw6lobyBrYXBpdMOhbHUpIgogICkgKwogIHRoZW1lX21pbmltYWwoKQoKYGBgCmBgYHtyfQpsaWJyYXJ5KGRwbHlyKQpsaWJyYXJ5KGtuaXRyKQoKIyBaw6FrbGFkbsOpIMWhdGF0aXN0aWt5IFJPRSBwb2TEvmEga2F0ZWfDs3JpZQpyb2Uuc3RhdHMgPC0gdWRhamUgJT4lCiAgZ3JvdXBfYnkoS2F0ZWdvcmlhKSAlPiUKICBzdW1tYXJpc2UoCiAgICBuICAgICAgPSBuKCksCiAgICBtZWFuICAgPSBtZWFuKFJPRSwgbmEucm0gPSBUUlVFKSwKICAgIHNkICAgICA9IHNkKFJPRSwgbmEucm0gPSBUUlVFKSwKICAgIG1pbiAgICA9IG1pbihST0UsIG5hLnJtID0gVFJVRSksCiAgICBxMjUgICAgPSBxdWFudGlsZShST0UsIDAuMjUsIG5hLnJtID0gVFJVRSksCiAgICBtZWRpYW4gPSBtZWRpYW4oUk9FLCBuYS5ybSA9IFRSVUUpLAogICAgcTc1ICAgID0gcXVhbnRpbGUoUk9FLCAwLjc1LCBuYS5ybSA9IFRSVUUpLAogICAgbWF4ICAgID0gbWF4KFJPRSwgbmEucm0gPSBUUlVFKSwKICAgIC5ncm91cHMgPSAiZHJvcCIKICApCgojIFZ5Z2VuZXJvdmFuaWUgdGFidcS+a3kKa2FibGUocm9lLnN0YXRzLCBkaWdpdHMgPSAyLCBjYXB0aW9uID0gIlrDoWtsYWRuw6kgxaF0YXRpc3Rpa3kgdWthem92YXRlxL5hIFJPRSBwb2TEvmEga2F0ZWfDs3JpZSBmaXJteSIpCgpgYGAKYGBge3J9CiMgPT09PT09PT09PT09PT09PT09IEJhbMOtxI1reSA9PT09PT09PT09PT09PT09PT0KbGlicmFyeShkcGx5cikKbGlicmFyeShrbml0cikKbGlicmFyeShrYWJsZUV4dHJhKQoKIyAoYWsgZcWhdGUgbmVtw6HFoSBuYcSNw610YW7DqSBkw6F0YSwgb2Rrb21lbnR1aikKIyB1ZGFqZSA8LSByZWFkLmNzdigiZGF0YUVLT05PTUVUUklBLmNzdiIsIGhlYWRlciA9IFRSVUUsIHNlcCA9ICI7IiwgZGVjID0gIiwiLAojICAgICAgICAgICAgICAgICAgIGNoZWNrLm5hbWVzID0gVFJVRSwgc3RyaW5nc0FzRmFjdG9ycyA9IEZBTFNFKQoKIyBQb21vY27DoSBmdW5rY2lhIG5hIHbDvXBvxI1ldCDFoXRhdGlzdMOtawpjYWxjX3N0YXRzIDwtIGZ1bmN0aW9uKGRmLCBncm91cF92YXIsIHZhbHVlX3ZhcikgewogIGRmICU+JQogICAgZ3JvdXBfYnkoe3sgZ3JvdXBfdmFyIH19KSAlPiUKICAgIHN1bW1hcmlzZSgKICAgICAgbiAgICAgID0gbigpLAogICAgICBtZWFuICAgPSBtZWFuKHt7IHZhbHVlX3ZhciB9fSwgbmEucm0gPSBUUlVFKSwKICAgICAgc2QgICAgID0gc2Qoe3sgdmFsdWVfdmFyIH19LCBuYS5ybSA9IFRSVUUpLAogICAgICBtaW4gICAgPSBtaW4oe3sgdmFsdWVfdmFyIH19LCBuYS5ybSA9IFRSVUUpLAogICAgICBxMjUgICAgPSBxdWFudGlsZSh7eyB2YWx1ZV92YXIgfX0sIDAuMjUsIG5hLnJtID0gVFJVRSksCiAgICAgIG1lZGlhbiA9IG1lZGlhbih7eyB2YWx1ZV92YXIgfX0sIG5hLnJtID0gVFJVRSksCiAgICAgIHE3NSAgICA9IHF1YW50aWxlKHt7IHZhbHVlX3ZhciB9fSwgMC43NSwgbmEucm0gPSBUUlVFKSwKICAgICAgbWF4ICAgID0gbWF4KHt7IHZhbHVlX3ZhciB9fSwgbmEucm0gPSBUUlVFKSwKICAgICAgLmdyb3VwcyA9ICJkcm9wIgogICAgKQp9CgojID09PT09PT09PT09PT09PT09PSAxKSBST0UgcG9kxL5hIEthdGVnb3JpYSA9PT09PT09PT09PT09PT09PT0Kcm9lX3N0YXRzIDwtIGNhbGNfc3RhdHModWRhamUsIEthdGVnb3JpYSwgUk9FKQoKcm9lX3N0YXRzICU+JQogIGthYmxlKGRpZ2l0cyA9IDIsIGNhcHRpb24gPSAiWsOha2xhZG7DqSDFoXRhdGlzdGlreSBST0UgcG9kxL5hIGthdGVnw7NyaWUiKSAlPiUKICBrYWJsZV9zdHlsaW5nKGZ1bGxfd2lkdGggPSBGQUxTRSwKICAgICAgICAgICAgICAgIGJvb3RzdHJhcF9vcHRpb25zID0gYygic3RyaXBlZCIsICJob3ZlciIsICJjb25kZW5zZWQiKSkgJT4lCiAgY29sdW1uX3NwZWMoMSwgYm9sZCA9IFRSVUUpICU+JQogIHJvd19zcGVjKDAsIGJvbGQgPSBUUlVFLCBiYWNrZ3JvdW5kID0gIiNmMmYyZjIiKSAlPiUKICBhZGRfaGVhZGVyX2Fib3ZlKGMoIiAiID0gMiwgIlJPRSDigJMgxaB0YXRpc3Rpa3kiID0gNykpCgojID09PT09PT09PT09PT09PT09PSAyKSBST0EgcG9kxL5hIEZvcm1hID09PT09PT09PT09PT09PT09PQpyb2Ffc3RhdHMgPC0gY2FsY19zdGF0cyh1ZGFqZSwgRm9ybWEsIFJPQSkKCnJvYV9zdGF0cyAlPiUKICBrYWJsZShkaWdpdHMgPSAyLCBjYXB0aW9uID0gIlrDoWtsYWRuw6kgxaF0YXRpc3Rpa3kgUk9BIHBvZMS+YSBmb3JteSBmaXJteSIpICU+JQogIGthYmxlX3N0eWxpbmcoZnVsbF93aWR0aCA9IEZBTFNFLAogICAgICAgICAgICAgICAgYm9vdHN0cmFwX29wdGlvbnMgPSBjKCJzdHJpcGVkIiwgImhvdmVyIiwgImNvbmRlbnNlZCIpKSAlPiUKICBjb2x1bW5fc3BlYygxLCBib2xkID0gVFJVRSkgJT4lCiAgcm93X3NwZWMoMCwgYm9sZCA9IFRSVUUsIGJhY2tncm91bmQgPSAiI2YyZjJmMiIpICU+JQogIGFkZF9oZWFkZXJfYWJvdmUoYygiICIgPSAyLCAiUk9BIOKAkyDFoHRhdGlzdGlreSIgPSA3KSkKCmBgYApgYGB7cn0KIyB0LXRlc3Q6IHBvcm92bmFuaWUgcHJpZW1lcm92IFJPRSBtZWR6aSBkdm9tYSBmb3JtYW1pIGZpcmllbQp0LnRlc3QucmVzdWx0IDwtIHQudGVzdCgKICBST0UgfiBGb3JtYSwgICAgICAgIyBwb3Jvdm7DoXZhbWUgUk9FIHBvZMS+YSBkdm9jaCBza3Vww61uIHYgc3TEunBjaSBGb3JtYQogIGRhdGEgPSB1ZGFqZSwKICB2YXIuZXF1YWwgPSBGQUxTRSAKKQoKdC50ZXN0LnJlc3VsdAoKYGBgCmBgYHtyfQphbm92YS5yZXN1bHQgPC0gYW92KFJPQSB+IEZvcm1hLCBkYXRhID0gdWRhamUpCnN1bW1hcnkoYW5vdmEucmVzdWx0KQoKYGBgCmBgYHtyfQojIExpbmXDoXJuYSByZWdyZXNpYTogcHJlZGlrY2lhIFJPRSBuYSB6w6FrbGFkZSDEj2FsxaHDrWNoIHVrYXpvdmF0ZcS+b3YKbW9kZWwgPC0gbG0oUk9FIH4gUk9BICsgRUJJVERBbWFyemEgKyBNICsgWiwgZGF0YSA9IHVkYWplKQpzdW1tYXJ5KG1vZGVsKQoKYGBgCgo=