---
title: "The experiences of Bucharest residents regarding the city’s landscaped and natural green spaces"
author: "By Master’s students in the Cross-disciplinary perspectives on socio-ecological transformations program"
format:
html:
theme: minty
code-fold: true
code-tools: true
df-print: paged
toc: true
fontsize: 0.9em
---
```{r setup, include=FALSE}
library(ggplot2)
library(dplyr)
library(tidyr)
library(summarytools)
library(readr)
library(corrplot)
theme_set(theme_minimal(base_size = 12))
data <- read_csv("data.csv")
print(data)
```
---
## Introducere
Spațiile verzi urbane sunt esențiale pentru bunăstarea fizică și mentală, contribuind la reducerea poluării și la combaterea efectelor fenomenului de insulă de căldură. În București, percepția locuitorilor asupra calității și accesibilității acestor spații este critică pentru politicile publice de dezvoltare durabilă. Acest studiu analizează experiențele bucureștenilor în interacțiunea cu spațiile verzi amenajate și naturale.
## Materiale și Metode
### Colectarea datelor
Datele au fost colectate prin intermediul unui chestionar online, utilizând o combinație între eșantionarea prin conveniență și metoda "bulgărelui de zăpadă". Respondenții au oferit consimțământul informat, iar anonimatul a fost garantat.
### Măsurare și Metodă
Am utilizat o scară Likert (1-7) pentru evaluarea satisfacției, alături de întrebări cu răspuns unic și multiplu. Analiza a inclus statistici descriptive (frecvențe, medii), corelații de tip Spearman (pentru variabile ordinale) și reprezentări grafice.
## Rezultate
### Descrierea eșantionului
*Aici vei insera tabelul cu frecvențele demografice (Gen, Vârstă, Venit, Studii) folosind `summarytools::freq(data$Variabila)`.*
```{r}
# ==============================================================================
# 1. FSV3: Unde se află spațiile verzi pe care le frecventați cel mai des?
# ==============================================================================
# Transformăm variabila din coduri în text (0, 1, 2)
data <- data %>%
mutate(FSV3_Cat = factor(FSV3,
levels = c(0, 1, 2),
labels = c("În apropierea locuinței",
"În alt sector",
"La periferia Bucureștiului")))
# Generare Tabel de frecvență
tabel_FSV3 <- data %>%
filter(!is.na(FSV3_Cat)) %>%
count(FSV3_Cat, name = "Frecvență") %>%
mutate(Procent = paste0(round(Frecvență / sum(Frecvență) * 100, 1), "%"))
print("Tabel de frecvență: FSV3")
print(tabel_FSV3)
# Generare Bar chart
grafic_FSV3 <- ggplot(data %>% filter(!is.na(FSV3_Cat)), aes(x = FSV3_Cat, fill = FSV3_Cat)) +
geom_bar(color = "white", alpha = 0.85) +
geom_text(stat = 'count', aes(label = after_stat(count)), vjust = -0.5, size = 4, fontface = "bold") +
# Paletă manuală de 3 nuanțe de verde
scale_fill_manual(values = c("#A2CD5A", "#74A836", "#458B00"), guide = "none") +
labs(title = "Unde se află spațiile verzi frecventate cel mai des?",
x = "Locație",
y = "Număr de respondenți") +
theme_minimal() +
theme(plot.title = element_text(face = "bold", size = 14),
axis.text.x = element_text(size = 11))
grafic_FSV3
```
```{r}
# 2. FSV4 - Activități desfășurate (răspuns multiplu)
# ---------------------------------------------------------
# Preluăm coloanele, le însumăm și le transformăm în text
activitati_multiplu <- data %>%
select(FSV4_0, FSV4_1, FSV4_2, FSV4_3, FSV4_4, FSV4_5, FSV4_6, FSV4_7, FSV4_8) %>%
summarise(across(everything(), ~sum(. == 1, na.rm = TRUE))) %>%
pivot_longer(cols = everything(), names_to = "Cod", values_to = "Frecventa") %>%
mutate(Activitate = case_when(
Cod == "FSV4_0" ~ "Plimbare",
Cod == "FSV4_1" ~ "Sport",
Cod == "FSV4_2" ~ "Muncă remote",
Cod == "FSV4_3" ~ "Studiat / Lectură",
Cod == "FSV4_4" ~ "Socializare",
Cod == "FSV4_5" ~ "Relaxare",
Cod == "FSV4_6" ~ "Admirat natura",
Cod == "FSV4_7" ~ "Doar pentru tranzit",
Cod == "FSV4_8" ~ "Altele"
)) %>%
mutate(Activitate = reorder(Activitate, Frecventa)) # Ordonare pentru grafic
# Tabel de frecvență
print("Tabel de frecvență: Activități desfășurate (FSV4)")
print(activitati_multiplu %>% select(Activitate, Frecventa) %>% arrange(desc(Frecventa)))
# Generare Bar chart orizontal
grafic_FSV4 <- ggplot(activitati_multiplu, aes(x = Frecventa, y = Activitate, fill = Frecventa)) +
geom_col() +
geom_text(aes(label = Frecventa), hjust = -0.2, size = 4, fontface = "bold") +
# Gradient fix între verdele deschis și cel închis cerut
scale_fill_gradient(low = "#A2CD5A", high = "#458B00") +
labs(title = "Ce activități desfășurați în spațiile verzi?",
x = "Număr de selecții",
y = "Tip de activitate") +
theme_minimal() +
theme(legend.position = "none",
plot.title = element_text(face = "bold", size = 14))
grafic_FSV4
```
```{r}
# ==============================================================================# 3. ASV1: În cât timp ajungeți la cel mai frecventat spațiu verde? (Pie Chart)# ==============================================================================# Transformăm variabila
data <- data %>%
mutate(ASV1_Cat = factor(ASV1,
levels = c(0, 1, 2, 3, 4),
labels = c("< 10 minute",
"10-15 minute",
"16-30 minute",
"31-60 minute",
"> o oră")))# Creăm o bază de date sumarizată special pentru Pie Chart
date_pie_ASV1 <- data %>%
filter(!is.na(ASV1_Cat)) %>%
count(ASV1_Cat) %>%
mutate(Procent = n / sum(n) * 100)# Generare Pie Chart
grafic_ASV1 <- ggplot(date_pie_ASV1, aes(x = "", y = n, fill = ASV1_Cat)) +
geom_bar(stat = "identity", width = 1, color = "white") +
coord_polar("y", start = 0) +
geom_text(aes(label = paste0(round(Procent, 1), "%")),
position = position_stack(vjust = 0.5), size = 4, fontface = "bold", color = "white") +
# 4 nuanțe de verde + 1 nuanță de mov pentru ultima categorie
scale_fill_manual(values = c("#D9E699", "#B2D87B", "#85C155", "#58A330", "#2D701A")) +
labs(title = "Timpul de deplasare către cel mai frecventat spațiu verde",
fill = "Interval de timp",
x = NULL, y = NULL) +
theme_void() +
theme(plot.title = element_text(face = "bold", size = 14, hjust = 0.5))
grafic_ASV1
```
```{r}
#==============================================================================
# 4. ASV2: Ce modalitate de transport folosiți cel mai des? (Răspuns Multiplu)
# ==============================================================================
# Preluăm coloanele ASV2_0 până la ASV2_5
transport_multiplu <- data %>%
select(ASV2_0, ASV2_1, ASV2_2, ASV2_3, ASV2_4, ASV2_5) %>%
summarise(across(everything(), ~sum(. == 1, na.rm = TRUE))) %>%
pivot_longer(cols = everything(), names_to = "Cod", values_to = "Frecventa") %>%
mutate(Transport = case_when(
Cod == "ASV2_0" ~ "Mașina personală",
Cod == "ASV2_1" ~ "Bolt/Uber/Taxi/Altul",
Cod == "ASV2_2" ~ "Transport în comun",
Cod == "ASV2_3" ~ "Mersul pe jos",
Cod == "ASV2_4" ~ "Bicicletă, role, trotinetă",
Cod == "ASV2_5" ~ "Altele"
)) %>%
mutate(Transport = reorder(Transport, Frecventa))
# Tabel de frecvență
print("Tabel de frecvență: Modalitate de transport (ASV2)")
print(transport_multiplu %>% select(Transport, Frecventa) %>% arrange(desc(Frecventa)))
# Generare Bar chart orizontal
grafic_ASV2 <- ggplot(transport_multiplu, aes(x = Frecventa, y = Transport, fill = Frecventa)) +
geom_col() +
geom_text(aes(label = Frecventa), hjust = -0.2, size = 4, fontface = "bold") +
# Același gradient de verde
scale_fill_gradient(low = "#A2CD5A", high = "#458B00") +
labs(title = "Mijlocul de transport preferat pentru a ajunge în spațiile verzi",
x = "Număr de selecții",
y = "Mijloc de transport") +
theme_minimal() +
theme(legend.position = "none",
plot.title = element_text(face = "bold", size = 14))
grafic_ASV2
```
```{r}
#==============================================================================
# 5. OSVA1: Spațiile verzi sunt întreținute corespunzător de autorități (Likert)
# ==============================================================================
# Generare Bar chart
grafic_OSVA1 <- ggplot(data %>% filter(!is.na(OSVA1)), aes(x = factor(OSVA1), fill = factor(OSVA1))) +
geom_bar(color = "white", alpha = 0.85) +
geom_text(stat = 'count', aes(label = after_stat(count)), vjust = -0.5, size = 4, fontface = "bold") +
# Trecere logică: Mov (Dezacord) -> Gri (Neutru) -> Verde (Acord)
scale_fill_manual(values = c("#5E2B97", "#8A54C7", "#C4A7E6", "#D3D3D3", "#A2CD5A", "#74A836", "#458B00"), guide = "none") +
labs(title = "Percepția asupra întreținerii spațiilor verzi de către autorități",
subtitle = "1 = Dezacord Total, 7 = Acord Total",
x = "Scor Likert (1 - 7)",
y = "Număr de respondenți") +
theme_minimal() +
theme(plot.title = element_text(face = "bold", size = 14))
grafic_OSVA1
```
```{r}
# 6. Corelații (opțional) – de exemplu, între OSVA1 și vârstă/venit
# -------------------------------------------------------------------
cor.test(data$OSVA1, data$Varsta, method = "spearman", exact = FALSE)
cor.test(data$OSVA1, data$Venit, method = "spearman", exact = FALSE)
```
*Nu există o corelație semnificativă între percepția întreținerii spațiilor verzi și vârstă (rho = -0.014, p = 0.845), nici între aceasta și venit (rho = 0.032, p = 0.649).*
## Concluzii și Recomandări
Studiul evidențiază o nevoie de îmbunătățire a managementului spațiilor verzi. Recomandăm autorităților publice:
1. Prioritizarea igienizării spațiilor verzi curente.
2. Dezvoltarea de noi zone verzi în cartierele deficitare pentru a reduce timpul de accesibilitate.
3. Transparență sporită în gestionarea resurselor alocate întreținerii.