---
title: "Análisis de Sociograma"
author: "Vicente Nevarez & Miguel Helguera"
date: "10/05/24"
output: html_document
---

## Cargar Datos
Primero, leemos los datos desde un archivo CSV y observamos las primeras filas para entender la estructura de los datos.

```{r cargar_datos, echo=TRUE}
library("igraph")

# Cargar datos desde archivo CSV
datos <- read.csv("C:/R/sociograma.csv", header = TRUE, sep = ",")

# Mostrar las primeras filas del conjunto de datos
head(datos)

Visualizar datos y estructura

Mostrar los encabezados de las columnas y las dimensiones del dataset para entender su estructura.

```{r estructura_datos, echo=TRUE} # Encabezado del dataset colnames(datos)

Dimensiones del dataset

dim(datos)


## Sociograma: Quién Forma Equipo con Quién
Visualizamos las relaciones para ver quién elegiría a quién para formar equipo.

```{r grafico_formar_equipo, echo=FALSE}
# Crear el dataframe para el gráfico
nombre <- datos$nombre
formarEquipo <- datos$formarEquipo
dataf_formar <- data.frame(nombre, formarEquipo)

# Crear el gráfico dirigido
g_formar <- graph.data.frame(dataf_formar, directed = TRUE)

# Graficar el sociograma
plot.igraph(g_formar,
            edge.curved = FALSE,
            edge.color = "red",
            edge.width = 0.2,
            edge.arrow.size = 0.05,
            vertex.color = "#6ec3db",
            vertex.label.cex = 0.7,
            vertex.label.dist = 0.5,
            vertex.label.color = "black",
            vertex.label.bg = "white",
            layout = layout.fruchterman.reingold(g_formar, niter = 10000, area = 10000, repulserad = 3))

Sociograma: Quién No Formaría Equipo

Visualizamos las relaciones para quienes indicaron que no formarían equipo con otros individuos.

```{r grafico_no_formar_equipo, echo=FALSE} # Crear el dataframe para este gráfico nombre <- datos\(nombre no_formarian_equipo <- datos\)NoFormarEquipo dataf_no_formar <- data.frame(nombre, no_formarian_equipo)

Crear el gráfico dirigido

g_no_formar <- graph.data.frame(dataf_no_formar, directed = TRUE)

Graficar el sociograma

plot.igraph(g_no_formar, edge.curved = FALSE, edge.color = “red”, edge.width = 0.2, edge.arrow.size = 0.05, vertex.color = “#6ec3db”, vertex.label.cex = 0.7, vertex.label.dist = 0.5, vertex.label.color = “black”, vertex.label.bg = “white”, layout = layout.fruchterman.reingold(g_no_formar, niter = 10000, area = 10000, repulserad = 3))


## Conclusión
Los gráficos generados muestran visualmente las relaciones entre individuos, tanto para formar equipo como para no formar equipo. Estos datos pueden ser útiles para comprender las conexiones y la dinámica social dentro de un grupo.