---
title: "Práca s databázou - AI v európskych podnikoch"
author: Júlia Kurčíková
date: 10/23/2026
lang: sk
format:
html:
toc: true
toc-location: left
toc-title: Obsah
number-sections: true
theme: united
highlight-style: tango
code-fold: show
code-tools: true
editor:
markdown:
wrap: 72
---
```{r}
knitr::opts_chunk$set(
echo = TRUE,
message = FALSE,
warning = FALSE
)
library(tidyverse)
library(knitr)
library(kableExtra)
library(broom)
cislo <- function(x, d = 1) format(round(x, d), nsmall = d, decimal.mark = ",")
```
::: callout-note
## Údaje
Databáza Eurostatu
[isoc_eb_ai](https://ec.europa.eu/eurostat/databrowser/view/isoc_eb_ai/default/table?lang=en){target="_blank" rel="noopener"}
– podiel podnikov (v %), ktoré používajú umelú inteligenciu. Údaje sú za
európske krajiny, roky **2021, 2023, 2024 a 2025** a podľa veľkosti
podniku. Keďže ide o časový rad, budem s nimi pracovať aj na ďalších
hodinách.
**Výskumné otázky**
- Ako rýchlo sa AI v podnikoch šíri?
- Kde je Slovensko v porovnaní s krajinami V4 a priemerom EÚ?
- Závisí využívanie AI od veľkosti podniku?
:::
# Príprava údajov
## Rozcvička: malá tabuľka krajín V4
Základné operácie s `data.frame` som zhrnula do jedného
príkladu. Vytvorím tabuľku krajín V4 s podielom podnikov s AI v rokoch
2023 a 2025, pridám stĺpec s nárastom aj ďalší riadok (priemer EÚ) a
vyberiem z nej krajiny, ktoré sú nad priemerom V4.
```{r}
v4 <- data.frame(
Krajina = c("Slovensko", "Česko", "Poľsko", "Maďarsko"),
AI.2023 = c(7.04, 5.90, 3.67, 3.68),
AI.2025 = c(18.00, 17.60, 8.36, 10.37)
)
v4 <- cbind(v4, Narast = v4$AI.2025 - v4$AI.2023)
v4 <- rbind(v4, data.frame(Krajina = "EÚ (27 krajín)", AI.2023 = 8.06,
AI.2025 = 19.95, Narast = 19.95 - 8.06))
v4[v4$AI.2025 > mean(v4$AI.2025[1:4]), c("Krajina", "AI.2025")]
```
V tabuľke je Slovensko zvýraznené a riadok EÚ slúži ako porovnanie:
```{r}
v4 %>%
kable(digits = 1,
col.names = c("Krajina", "2023 (%)", "2025 (%)", "Nárast (p. b.)"),
caption = "Podniky využívajúce AI – krajiny V4 a EÚ") %>%
kable_styling(bootstrap_options = c("hover", "condensed"), full_width = FALSE) %>%
row_spec(1, bold = TRUE, background = "#fde9d9") %>%
row_spec(5, italic = TRUE, color = "grey40")
```
Slovensko malo v roku 2025 najvyšší podiel v rámci V4
(`r cislo(v4$AI.2025[1])` %) a za dva roky narástlo o
`r cislo(v4$Narast[1])` percentuálneho bodu. Priemer EÚ však stále
nedosahuje.
## Načítanie a úprava databázy
Z databázy si ponechám len potrebné stĺpce, premenujem ich a pripojím
slovenské názvy krajín.
```{r}
krajiny <- read.csv2("udaje/krajiny.csv")
udaje.ai <- read.csv("udaje/isoc_eb_ai.csv") %>%
select(geo, Velkost = size_emp, Ukazovatel = indic_is,
Rok = TIME_PERIOD, Hodnota = OBS_VALUE, Poznamka = OBS_FLAG) %>%
left_join(krajiny, by = "geo")
glimpse(udaje.ai)
```
Databáza má `r nrow(udaje.ai)` riadkov, ale chýba v nej
`r sum(is.na(udaje.ai$Hodnota))` hodnôt. Eurostat niektoré údaje
nezverejňuje (dôverné alebo nespoľahlivé). Pri hlavnom ukazovateli
nemajú úplný časový rad tieto krajiny:
```{r}
udaje.ai %>%
filter(Ukazovatel == "E_AI_TANY", Velkost == "GE10", !is.na(Hodnota)) %>%
count(Krajina, name = "Rokov s údajom") %>%
filter(`Rokov s údajom` < 4)
```
Albánsko a Severné Macedónsko preto z porovnaní vynechávam. Chýbajúce
hodnoty nedopĺňam, pretože odhadnutá hodnota by skreslila porovnanie
krajín.
Ďalej pracujem s ukazovateľom **E_AI_TANY**, teda podielom podnikov,
ktoré používajú aspoň jednu technológiu AI. Pripravím si dve tabuľky:
celkovo za podniky s 10 a viac zamestnancami a zvlášť podľa veľkosti
podniku. Súhrny za EÚ a eurozónu nie sú krajiny, preto ich tu
nezahŕňam.
```{r}
vynechat <- c("EU27_2020", "EA", "AL", "MK")
ai.krajiny <- udaje.ai %>%
filter(Ukazovatel == "E_AI_TANY", Velkost == "GE10",
!geo %in% vynechat, !is.na(Hodnota))
ai.velkost <- udaje.ai %>%
filter(Ukazovatel == "E_AI_TANY", Velkost %in% c("10-49", "50-249", "GE250"),
!geo %in% vynechat, !is.na(Hodnota)) %>%
mutate(Velkost = factor(Velkost, levels = c("10-49", "50-249", "GE250"),
labels = c("malé", "stredné", "veľké")))
```
# Ako rýchlo sa AI šíri?
```{r}
vyvoj <- udaje.ai %>%
filter(Ukazovatel == "E_AI_TANY", Velkost == "GE10",
geo %in% c("SK", "CZ", "PL", "HU", "EU27_2020")) %>%
select(Krajina, Rok, Hodnota) %>%
pivot_wider(names_from = Rok, values_from = Hodnota) %>%
mutate(Narast = `2025` - `2021`) %>%
arrange(desc(`2025`))
vyvoj %>%
kable(digits = 1,
col.names = c("Krajina", "2021", "2023", "2024", "2025", "Nárast (p. b.)")) %>%
kable_styling(bootstrap_options = c("hover", "condensed"), full_width = FALSE) %>%
row_spec(which(vyvoj$Krajina == "Slovensko"), bold = TRUE, background = "#fde9d9") %>%
add_header_above(c(" " = 1, "Podiel podnikov s AI (%)" = 4, " " = 1))
```
```{r}
udaje.ai %>%
filter(Ukazovatel == "E_AI_TANY", Velkost == "GE10",
geo %in% c("SK", "CZ", "PL", "HU", "EU27_2020")) %>%
ggplot(aes(x = Rok, y = Hodnota, color = Krajina)) +
geom_line(linewidth = 1) +
geom_point(size = 2) +
scale_x_continuous(breaks = c(2021, 2023, 2024, 2025)) +
labs(title = "Podiel podnikov používajúcich AI",
subtitle = "podniky s 10 a viac zamestnancami",
x = NULL, y = "% podnikov",
caption = "Zdroj: Eurostat, isoc_eb_ai") +
theme_minimal()
```
Medzi rokmi 2021 a 2023 sa takmer nič nedialo. Prudký rast prišiel až v
rokoch 2024 a 2025, čo pravdepodobne súvisí s rozšírením generatívnej AI.
Slovensko a Česko rastú rovnakým tempom ako EÚ, Poľsko a Maďarsko
zaostávajú.
Rovnaký vývoj vidno aj na všetkých krajinách naraz:
```{r}
ai.stats <- ai.krajiny %>%
group_by(Rok) %>%
summarise(
Krajin = n(),
Priemer = mean(Hodnota),
Median = median(Hodnota),
Sm.odch = sd(Hodnota),
Min = min(Hodnota),
Max = max(Hodnota)
) %>%
mutate(Var.koef = Sm.odch / Priemer * 100)
ai.stats %>%
kable(digits = 1,
col.names = c("Rok", "Krajín", "Priemer", "Medián", "Sm. odch.",
"Min", "Max", "Var. koef. (%)")) %>%
kable_styling(bootstrap_options = c("hover", "condensed"), full_width = FALSE) %>%
column_spec(3, bold = TRUE, color = "white",
background = spec_color(ai.stats$Priemer, option = "C", end = 0.8))
```
```{r}
ggplot(ai.krajiny, aes(x = factor(Rok), y = Hodnota)) +
geom_boxplot(fill = "#fde9d9", color = "#E95420") +
geom_jitter(width = 0.1, alpha = 0.4, size = 1) +
labs(title = "Rozdelenie krajín podľa podielu podnikov s AI",
x = NULL, y = "% podnikov") +
theme_minimal()
```
Priemer sa od roku 2021 zvýšil z `r cislo(ai.stats$Priemer[1])` % na
`r cislo(ai.stats$Priemer[4])` %. Smerodajná odchýlka rastie tiež, takže
v percentuálnych bodoch sa rozdiely medzi krajinami zväčšujú. Variačný
koeficient je však od roku 2023 stabilný (okolo 52 %), takže relatívne
sú krajiny od seba stále približne rovnako ďaleko.
# Kde je Slovensko?
```{r fig.height=7}
ai.krajiny %>%
filter(Rok == 2025) %>%
ggplot(aes(x = reorder(Krajina, Hodnota), y = Hodnota, fill = geo == "SK")) +
geom_col() +
coord_flip() +
scale_fill_manual(values = c("grey70", "#E95420"), guide = "none") +
labs(title = "Podiel podnikov používajúcich AI v roku 2025",
x = NULL, y = "% podnikov",
caption = "Zdroj: Eurostat, isoc_eb_ai") +
theme_minimal()
```
```{r}
poradie.2025 <- ai.krajiny %>%
filter(Rok == 2025) %>%
arrange(desc(Hodnota)) %>%
mutate(Poradie = row_number())
sk.2025 <- poradie.2025 %>% filter(geo == "SK")
bind_rows(
slice_head(poradie.2025, n = 3),
sk.2025,
slice_tail(poradie.2025, n = 3)
) %>%
select(Poradie, Krajina, Hodnota) %>%
kable(digits = 1, col.names = c("Poradie", "Krajina", "% podnikov s AI")) %>%
kable_styling(bootstrap_options = c("hover", "condensed"), full_width = FALSE) %>%
row_spec(4, bold = TRUE, background = "#fde9d9")
```
Slovensko je v roku 2025 na `r sk.2025$Poradie`. mieste z
`r nrow(poradie.2025)` krajín, teda zhruba v strede. Na čele sú severské
krajiny a Benelux, na konci najmä
krajiny juhovýchodnej Európy a Poľsko.
Zaujímalo ma aj to, či krajiny, ktoré boli vpredu v roku 2023, sú vpredu
aj v roku 2025:
```{r}
ai.2023.2025 <- ai.krajiny %>%
filter(Rok %in% c(2023, 2025)) %>%
select(Krajina, Rok, Hodnota) %>%
pivot_wider(names_from = Rok, names_prefix = "AI.", values_from = Hodnota) %>%
drop_na()
ggplot(ai.2023.2025, aes(x = AI.2023, y = AI.2025)) +
geom_smooth(method = "lm", se = FALSE, color = "grey60", linewidth = 0.8) +
geom_point(aes(color = Krajina == "Slovensko"), size = 2.5) +
geom_text(data = filter(ai.2023.2025, Krajina == "Slovensko"),
aes(label = Krajina), vjust = -1, color = "#E95420") +
scale_color_manual(values = c("grey30", "#E95420"), guide = "none") +
labs(title = "Podniky s AI: rok 2023 vs. rok 2025",
x = "% podnikov v roku 2023", y = "% podnikov v roku 2025") +
theme_minimal()
```
Korelačný koeficient je
`r cislo(cor(ai.2023.2025$AI.2023, ai.2023.2025$AI.2025), 2)`. Poradie
krajín sa teda veľmi nemení: kto bol vpredu, ostáva vpredu.
# Závisí využívanie AI od veľkosti podniku?
```{r}
ai.velkost %>%
filter(Rok == 2025) %>%
ggplot(aes(x = Velkost, y = Hodnota, fill = Velkost)) +
geom_boxplot(show.legend = FALSE) +
scale_fill_brewer(palette = "Oranges") +
labs(title = "Podiel podnikov s AI podľa veľkosti podniku (2025)",
x = "Veľkosť podniku", y = "% podnikov") +
theme_minimal()
```
```{r}
anova.velkost <- aov(Hodnota ~ Velkost, data = filter(ai.velkost, Rok == 2025))
summary(anova.velkost)
```
Rozdiel je viditeľný už z grafu a ANOVA ho potvrdzuje (p-hodnota je
takmer nulová). Veľké podniky používajú AI približne trikrát častejšie
ako malé, pravdepodobne preto, že majú viac peňazí aj odborníkov.
# Je nárast štatisticky významný?
Porovnávam tie isté krajiny v rokoch 2023 a 2025. Ide teda o závislé
výbery, a preto namiesto obyčajného t-testu používam párový t-test.
```{r}
t.par <- t.test(ai.2023.2025$AI.2025, ai.2023.2025$AI.2023, paired = TRUE)
t.par
```
Podiel podnikov s AI sa za dva roky zvýšil v priemere o
`r cislo(t.par$estimate)` percentuálneho bodu (95 % interval
spoľahlivosti `r cislo(t.par$conf.int[1])` až
`r cislo(t.par$conf.int[2])` p. b.). Nárast je štatisticky významný.
# Regresný model: čas a veľkosť podniku
Na záver spájam obe zistenia do jedného modelu. Podiel podnikov s AI
vysvetľujem časom (počet rokov od 2021) a veľkosťou podniku.
```{r}
ai.velkost <- ai.velkost %>% mutate(Roky.od.2021 = Rok - 2021)
model <- lm(Hodnota ~ Roky.od.2021 + Velkost, data = ai.velkost)
tidy(model, conf.int = TRUE) %>%
mutate(term = c("Konštanta (malé podniky, 2021)", "Každý ďalší rok",
"Stredný podnik oproti malému", "Veľký podnik oproti malému"),
Vyznamny = ifelse(p.value < 0.05, "áno", "nie")) %>%
select(term, estimate, conf.low, conf.high, p.value, Vyznamny) %>%
kable(digits = 3,
col.names = c("", "Odhad (p. b.)", "95 % IS od", "95 % IS do",
"p-hodnota", "Významný")) %>%
kable_styling(bootstrap_options = c("hover", "condensed"), full_width = FALSE) %>%
column_spec(2, bold = TRUE)
```
```{r}
fit <- glance(model)
```
Model vysvetľuje `r cislo(fit$r.squared * 100)` % variability
(R² = `r cislo(fit$r.squared, 3)`, počet pozorovaní `r fit$nobs`).
::: callout-important
## Čo z modelu vyplýva
- Každý rok pribudne v priemere približne
**`r cislo(coef(model)["Roky.od.2021"])` p. b.** podnikov, ktoré
používajú AI.
- Veľké podniky sú oproti malým v priemere o
**`r cislo(coef(model)["Velkostveľké"])` p. b.** vyššie, stredné o
`r cislo(coef(model)["Velkoststredné"])` p. b.
- Model predpokladá rovnomerný rast, hoci údaje ukazujú zrýchlenie po
roku 2023. Ďalej nezohľadňuje rozdiely medzi krajinami. Oboje by sa
dalo zlepšiť na ďalších hodinách.
:::
# Zhrnutie
- Využívanie AI v európskych podnikoch sa od roku 2023 výrazne
zrýchlilo a priemer krajín sa za štyri roky viac ako zdvojnásobil.
- Slovensko je v strede rebríčka, najlepšie vo V4, ale stále pod
priemerom EÚ.
- Najsilnejším faktorom je veľkosť podniku: veľké podniky používajú AI
niekoľkonásobne častejšie ako malé.