Ok, vamos a ver lo que dejamos en el último video, donde estábamos viendo el tiempo que tardan en infectarse vs la población inicial imaginemos que una vez que lo hicimos, nos da curiosidad acerca de como es el gráfico que obtenemos luego del 100% de infección entonces no queremos ver los datos finales sino los datos que nos llevan a ese punto final, ok? el gráfico del que estamos hablando es el de los resultados finales un aspecto importante, un aspecto bueno de los MBA es que nos permite registrar toda la información de transición, la info que nos lleva desde las condiciones iniciales hasta el punto final, para ver como son las cosas a veces esto se denomina gráfico del tiempo de corrida o gráfico de serie temporal siempre requieren mucha info y en muchos casos, dependiendo de cuan grandes son nuestros conjuntos de datos, puede necesitar de mucho trabajo realizarlos porque debemos registrar toda la info para cada punto del tiempo, ahora si estamos corriendo algo por 10 ticks, no es mucho, pero si estamos corriendo algo por 10000 ticks, eso es mucha info que hay que registrar, incluso para una sola corrida pensemos entonces cuidadosamente, antes de poner la data, si realmente se necesita vamos a volver a nuestro modelo de dispersión de enfermedades y vamos a ver como podemos hacer esto en NetLogo Volvimos a NetLogo y vamos a crear estos datos del tiempo de corrida, estos datos de series temporales que nos permitirá examinar la tasa de infección en cada corrida, y al hacerlo no solo veremos la tasa de densidad de población, vamos a ver la densidad de la población, vamos a duplicarlo, esto nos crea una copia exacta con los mismos valores de entrada y vamos a llamar a este experimento "tiempo de corrida" en vez de llamarlo únicamente densidad de población y la primer línea que vemos, es la de la medida de la corrida por cada paso bien, esto está bien, salvo por el hecho que... qué es lo que estamos buscando? qué es lo que queremos analizar? cuál es la salida que queremos ver? no sólo es el último tick, porque no queremos ver la cuestión del tiempo, lo que queremos ver es en cada paso del tiempo, cuánta gente está infectada, enfermos, entonces necesitamos cambiar nuestra salida de los ticks para contar las tortugas que están infectadas le damos ok, para salvarlo y lo ponemos a correr y obtenemos una salida en el escritorio, ya lo hicimos antes obtenemos la salida de esto ahora volvemos al R, para analizar esos datos volvimos a R y vamos a analizar la serie temporal de datos que generamos en el último experimento y una de las primeras cosas, usamos el mismo comando, ustedes notarán que el cambio en los archivos de datos, apuntan al tiempo de corrida, que es la salida que usamos en el experimento esto es todo un nuevo conjunto de código en R que va a analizar los datos, pero es similar en algunos aspectos tenemos ahora que asignar los nuevos colores, debido es casi lo mismo, excepto porque ahora tenemos como variable a las tortugas que están infectadas al final en R siempre las etiquetas llevan puntos cuando no alcanza a poner más vamos a renombrarlo a infectados, renombramos los pasos, etc. ahora si vemos los encabezados luego de haber corrido, es más simple de entender que es lo que está sucediendo también podemos ver que las corridas están desordenadas, por lo tanto tendremos que pensar en como lidiar con ello, si es que lo necesitamos por suerte en la mayoría de los casos no lo necesitamos el próximo paso, esto es algo que me gusta cuando analizo miremos todos los datos, miremos que nos dicen todos esos datos vamos a graficar, sea lo que sea que pongamos en el eje de las X y sea lo que sea poner en el eje de las Y en el eje de las X ponemos los pasos y en el eje de las Y el número de infectados si lo graficamos, vemos este gráfico que es interesante, pero no queda claro que es lo que está sucediendo en que se diferencian estas líneas de estas otras, puedo tratar de adivinar que estos son los 50 agentes en la población, 100, 150, 200 infectados ahí no adivino porque puedo ver aproximadamente lo que puede ser una de las cosas que hace al gráfico difícil de leer es el hecho de que no sabemos a qué corresponde cada línea en relación con los números, el número incial de personas, pero también el hecho de que tienen diferentes valores 200, 150 y así sucesivamente hagamos una versión más limpia de este gráfico lo primero que voy a hacer es crear un nuevo campo en el conjunto de datos que voy a llamarlo frac.infected o fracción de infectados frac.infected va a ser igual al número de los que fueron infectados dividido por el número inicial de personas esto nos dice la fracción de infectados en la población la próxima cosa que voy a hacer es colorear y darles diferentes símbolos a los puntos a los diferentes números de la población inicial estoy todavía graficando los pasos versus la fracción de infectados pero tengo este comando que dice asigne el caracter de cada punto a 1, 2, 3 o 4 basados en cual es el número de personas para ese punto en particular tengo que convertirlo primero en factor y luego lo convierto de nuevo a numérico para poder indexarlos en este vector que acabo de crear y puedo hacer lo mismo para el color, tomo el número de personas, lo convierto a factor, que es algo del R que nos permite estar más seguros, 50 es un factor, 100 es un factor y así sucesivamente y luego los convertimos a numérico, 50, 100 y una vez que lo hicimos, graficamos los resultados volvemos a la ventana ahora vemos que no solamente se hace la comparación, están todos en el mismo eje pero puedo ver también los diferentes colores y como se ven en cada punto puedo agregar una leyenda, también así podemos estar seguros de qué implica cada punto, podemos hacer esto asignando el texto de la etiqueta que sea igual a las etiquetas de los factores y el caracter es igual a 1, 2, 3 y los colores son iguales a 1, 2, 3 ahora que hice todo, puedo ver mi gráfico y tengo alguna información que me ayuda a entender sin embargo, el problema con esto es que tenemos todos los datos juntos que puede hacer dificultoso de leer y ver que sucede lo que podemos hacer entonces es, podemos empezar a resumir los datos pero a diferencia del caso anterior, no vamos a resumir a partir del número de personas sino que también resumiremos a partir de los pasos, entonces lo que queremos hacer es ver cual es el valor del promedio de las corridas, cuando asignamos el valor inicial de las personas a 50 al paso número 176 si el número inicial de personas es 200 al paso del tiempo 10 y podemos calcular todo y también vamos a calcular el desvío estándar una vez que hicimos eso, podemos graficar un gráfico de barras donde podremos ver los pasos versus la fracción de infectados y obtenemos esa fracción de infectados, agregando el desvío estándar y restando, así podemos entender como se ve ahora el problema es que cuando miramos a estos datos se ve cada punto simple y no hemos agregado los colores, no hemos hecho todo el trabajo, y entonces no es obvio cual es la diferencia, que es lo que está pasando vamos a hacer algo, una cosa que podemos notar, es que graficando cada punto simple cuando tenemos 500 pasos, precisa de muchos datos y eso hace que sea difícil diferenciarlos entonces una de las primeras cosas que vamos a hacer, es tomar los datos del promedio y vamos a mirar únicamente cada 10 pasos entonces lo que hacemos es tomar los datos originales y decimos únicamente incluí los pasos, que cuando dividimos por 10, obtenemos un resto de 0 es el operador denominado módulo, el operador módulo toma como entrada un valor lo divide y nos muestra el resto esto nos va a dar 10, 20 y 34 lo que vamos a hacer, tanto para el desvío estándar y el promedio, así ahora sólo tenemos en el subconjunto de datos los datos cada 10 pasos todos estos conjuntos de datos, son muy grandes y en verdad no necesitamos toda esta información entonces porqué no creamos un conjunto de datos que queremos mostrar en el gráfico vamos a tomar, vamos a usar el comando cbind otra vez, para tomar únicamente los pasos el número de personas la media, del subconjunto de datos de la media el desvío estándar, del subconjunto de datos del desvío estándar y vamos a graficar todos estos datos, que son un subconjunto del conjunto original de datos si lo vemos tiene los datos que queremos ahora que tenemos exactamente los datos que queremos en una tabla en vez de graficar todos los datos de una vez, como lo hicimos con un solo comando voy a graficar a lo largo del tiempo la primera cosa que voy a hacer es graficar sólo los datos que tienen como población inicial 50 personas, en este caso es la población inicial lo que voy a hacer es, con los datos agregados, que recién creamos, cuando el número de personas sea igual a 50 entonces grafique cada paso contra la media de ese conjunto de datos en el eje con el color negro y aquí está tu etiqueta, podemos verlo, ahora puedo agregar a este gráfico, un incremento a lo largo del tiempo, entonces lo siguiente que voy a hacer es graficar cuando es 100, usando plot que crea un nuevo gráfico en este punto, y agregamos puntos al gráfico agrego puntos cuando hay 100 personas y con 150 y con 200, tengo diferentes pch y diferentes colores puedo agregar una leyenda, así queda claro cual es cual, 50, 100, 200, en este caso pongo esto porque sé exactamente qué es porque ya lo grafiqué podemos agregar barras de la misma forma, el comando de R bar es igual a los que vimos antes, con la diferencia de que podemos decir que a es igual a verdadero que implica que agrega los datos que tiene el otro comando del que quiero hablarles es como ponerle color a la barra porque no sabe como hacerlo en forma automática, entonces voy a decirle que para 15, negro para 100, rojo y así sucesivamente puedo agregarle una sección con títulos, ya están ahí lo hicimos en la sesión previa y ahora puedo ver los datos y ahora tenemos un hermoso resumen de los datos para ver en tiempo de corrida y lo que pueden ver, mirándolos es que queda claro que el patrón de difusión, que arranca en 50 es un poco más lento que el que tiene 100 o 150 o 200 pero los de 150 o 200 están muy cerca unos de otros, las barras se superponen no son muy diferentes unos de otros en el período de tiempo particular, siempre es una fracción del número de infectados pero sí, esta es una linda forma de ver las series temporales y datos del tiempo de corrida para tus modelos