diff --git a/ejercicio3.ipynb b/ejercicio3.ipynb
index f4181bfb8a703b47f6f1156965ccfabad38b5319..2e5f838560745556e6ac8545aabd5d36882bd55a 100644
--- a/ejercicio3.ipynb
+++ b/ejercicio3.ipynb
@@ -1,28 +1,431 @@
{
"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Jocabed MartÃnez\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Amigos congueros\n",
+ "\n",
+ "* Entre en contacto con 10 estudiantes del curso de datos y 2 profesores o personal de soporte de LaConga, uno del curso de datos y otro de afuera, y consulte su nombre completo, su nombre de usuario en mattermost, edad, paÃs de origen, ciudad donde residen, su especialidad cientÃfica, nombre del instituto en que estudian/laboran, y un hobbie o afición.\n",
+ "\n",
+ "* Cree un diccionario llamado \"compas\", donde la llave sea el nombre de usuario en mattermost, y si depliego el valor almacenado, por ejemplo en compas[\"juan-pineda\"], lo que obtengo es a la vez otro diccionario, con las llavies \"nombre\", \"apellido\", \"paÃs\", \"residencia\", \"edad\", \"institución\", \"hobbie\".\n",
+ " \n",
+ "* Cree una función que reciba como entrada el diccionario y un paÃs de origen, y retorne las informaciones completas de todas las personas de ese paÃs, tabuladas en una forma fácil de entender. Busque una forma de calcular, a partir del diccionario, el promedio de edad de todas las personas en él, y una forma de mostrar todas las instituciones (sin repetición)."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Creamos un diccionario llamado compas, con la información de varias personas de LaConga. A continuación se muestra el diccionario."
+ ]
+ },
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
+ "outputs": [],
+ "source": [
+ "compas = {'martinezj' : \n",
+ " {'nombre' : 'Jocabed' , \n",
+ " 'apellido' : 'MartÃnez' , \n",
+ " 'paÃs' : 'Venezuela' , \n",
+ " 'residencia' : 'Caracas', \n",
+ " 'edad' : 22 , \n",
+ " 'institución' : 'Universidad Central de Venezuela' , \n",
+ " 'hobbie' : 'música'\n",
+ " },\n",
+ " 'tugoresa' : {'nombre' : 'Andrea' , \n",
+ " 'apellido' : 'Tugores' , \n",
+ " 'paÃs' : 'Venezuela' , \n",
+ " 'residencia' : 'Caracas', \n",
+ " 'edad' : 24 , \n",
+ " 'institución' : 'Universidad Central de Venezuela' , \n",
+ " 'hobbie' : 'tennis'\n",
+ " },\n",
+ " 'semprung' : {'nombre' : 'Gerardo' , \n",
+ " 'apellido' : 'Semprúm' , \n",
+ " 'paÃs' : 'Venezuela' , \n",
+ " 'residencia' : 'Caracas', \n",
+ " 'edad' : 24 , \n",
+ " 'institución' : 'Universidad Central de Venezuela' , \n",
+ " 'hobbie' : 'artes marciales'\n",
+ " },\n",
+ " 'afont' : {'nombre' : 'AnamarÃa' , \n",
+ " 'apellido' : 'Font' , \n",
+ " 'paÃs' : 'Venezuela' , \n",
+ " 'residencia' : 'Alemania', \n",
+ " 'edad' : 61 , \n",
+ " 'institución' : 'Universidad Central de Venezuela' , \n",
+ " 'hobbie' : 'leer'\n",
+ " },\n",
+ " 'fernandezn' : {'nombre' : 'Nicolás' , \n",
+ " 'apellido' : 'Fernández' , \n",
+ " 'paÃs' : 'Argentina' , \n",
+ " 'residencia' : 'Perú', \n",
+ " 'edad' : 27 , \n",
+ " 'institución' : 'Universidad Nacional Mayor de San Marcos' , \n",
+ " 'hobbie' : 'piano'\n",
+ " },\n",
+ " 'juan-pineda' : {'nombre' : 'Juan' , \n",
+ " 'apellido' : 'Pineda' , \n",
+ " 'paÃs' : 'Colombia' , \n",
+ " 'residencia' : 'Bucaramanga', \n",
+ " 'edad' : 37 , \n",
+ " 'institución' : 'Universidad Industrial de Santander' , \n",
+ " 'hobbie' : 'dibujo y caminatas en la naturaleza'\n",
+ " },\n",
+ " 'cristian.velandia' : {'nombre' : 'Cristian' , \n",
+ " 'apellido' : 'Velandia' , \n",
+ " 'paÃs' : 'Colombia' , \n",
+ " 'residencia' : 'Colombia', \n",
+ " 'edad' : 27 , \n",
+ " 'institución' : 'Universidad Nacional de Colombia' , \n",
+ " 'hobbie' : 'anime, videos juegos'\n",
+ " },\n",
+ " 'grisalesj' : {'nombre' : 'Jennifer' , \n",
+ " 'apellido' : 'Grisales' , \n",
+ " 'paÃs' : 'Colombia' , \n",
+ " 'residencia' : 'Bucaramanga', \n",
+ " 'edad' : 27 , \n",
+ " 'institución' : 'Universidad Industrial de Santander' , \n",
+ " 'hobbie' : 'rugby'\n",
+ " },\n",
+ " 'escalantee' : {'nombre' : 'Eduardo' , \n",
+ " 'apellido' : 'Escalante' , \n",
+ " 'paÃs' : 'Venezuela' , \n",
+ " 'residencia' : 'Venezuela', \n",
+ " 'edad' : 46 , \n",
+ " 'institución' : 'Universidad Simón BolÃvar' , \n",
+ " 'hobbie' : 'música'\n",
+ " },\n",
+ " 'omarasto' : {'nombre' : 'Omar' , \n",
+ " 'apellido' : 'Asto' , \n",
+ " 'paÃs' : 'Perú' , \n",
+ " 'residencia' : 'Lima', \n",
+ " 'edad' : 25 , \n",
+ " 'institución' : 'Universidad Nacional de IngenierÃa' , \n",
+ " 'hobbie' : 'leer'\n",
+ " },\n",
+ " 'mamaniy' : {'nombre' : 'Yhony' , \n",
+ " 'apellido' : 'Mamani Arce' , \n",
+ " 'paÃs' : 'Perú' , \n",
+ " 'residencia' : 'Perú', \n",
+ " 'edad' : 26 , \n",
+ " 'institución' : 'Universidad Nacional Mayor de San Marcos' , \n",
+ " 'hobbie' : 'correr'\n",
+ " },\n",
+ " 'acerot' : {'nombre' : 'Tatiana' , \n",
+ " 'apellido' : 'Acero Cuellar' , \n",
+ " 'paÃs' : 'Colombia' , \n",
+ " 'residencia' : 'Colombia', \n",
+ " 'edad' : 27 , \n",
+ " 'institución' : 'Universidad Nacional de Colombia' , \n",
+ " 'hobbie' : 'anime, cocinar,senderismo'\n",
+ " }\n",
+ "}"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Ahora, creamos una función para mostrar la información de todas las personas de un mismo paÃs."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "#Función para mostrar la información de todas las personas de un mismo paÃs\n",
+ "def info(dict, str): #Argumentos, el diccionario y el paÃs\n",
+ " print('La información de compas de', str,'es:' '\\n') #Un encabezado antes de que muestre toda la info\n",
+ " for compa,info in dict.items(): #Para cada usuario, información de usuario en los items del diccionario\n",
+ " if dict[compa]['paÃs'] == str: #Si el str en el argumento es igual al paÃs del usuario\n",
+ " for i in info: #Cada información de ese usuario\n",
+ " print(i,': ',info[i]) #Imprimirla\n",
+ " print()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Probamos con Colombia."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "La información de compas de Colombia es:\n",
+ "\n",
+ "nombre : Juan\n",
+ "apellido : Pineda\n",
+ "paÃs : Colombia\n",
+ "residencia : Bucaramanga\n",
+ "edad : 37\n",
+ "institución : Universidad Industrial de Santander\n",
+ "hobbie : dibujo y caminatas en la naturaleza\n",
+ "\n",
+ "nombre : Cristian\n",
+ "apellido : Velandia\n",
+ "paÃs : Colombia\n",
+ "residencia : Colombia\n",
+ "edad : 27\n",
+ "institución : Universidad Nacional de Colombia\n",
+ "hobbie : anime, videos juegos\n",
+ "\n",
+ "nombre : Jennifer\n",
+ "apellido : Grisales\n",
+ "paÃs : Colombia\n",
+ "residencia : Bucaramanga\n",
+ "edad : 27\n",
+ "institución : Universidad Industrial de Santander\n",
+ "hobbie : rugby\n",
+ "\n",
+ "nombre : Tatiana\n",
+ "apellido : Acero Cuellar\n",
+ "paÃs : Colombia\n",
+ "residencia : Colombia\n",
+ "edad : 27\n",
+ "institución : Universidad Nacional de Colombia\n",
+ "hobbie : anime, cocinar,senderismo\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "info(compas, 'Colombia')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Vemos que se imprime la información de todas las personas de Colombia. Probemos con Perú."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "La información de compas de Perú es:\n",
+ "\n",
+ "nombre : Omar\n",
+ "apellido : Asto\n",
+ "paÃs : Perú\n",
+ "residencia : Lima\n",
+ "edad : 25\n",
+ "institución : Universidad Nacional de IngenierÃa\n",
+ "hobbie : leer\n",
+ "\n",
+ "nombre : Yhony\n",
+ "apellido : Mamani Arce\n",
+ "paÃs : Perú\n",
+ "residencia : Perú\n",
+ "edad : 26\n",
+ "institución : Universidad Nacional Mayor de San Marcos\n",
+ "hobbie : correr\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "info(compas, 'Perú')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Obtenemos la información de las personas de Perú. Finalmente, Venezuela."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "hola\n"
+ "La información de compas de Venezuela es:\n",
+ "\n",
+ "nombre : Jocabed\n",
+ "apellido : MartÃnez\n",
+ "paÃs : Venezuela\n",
+ "residencia : Caracas\n",
+ "edad : 22\n",
+ "institución : Universidad Central de Venezuela\n",
+ "hobbie : música\n",
+ "\n",
+ "nombre : Andrea\n",
+ "apellido : Tugores\n",
+ "paÃs : Venezuela\n",
+ "residencia : Caracas\n",
+ "edad : 24\n",
+ "institución : Universidad Central de Venezuela\n",
+ "hobbie : tennis\n",
+ "\n",
+ "nombre : Gerardo\n",
+ "apellido : Semprúm\n",
+ "paÃs : Venezuela\n",
+ "residencia : Caracas\n",
+ "edad : 24\n",
+ "institución : Universidad Central de Venezuela\n",
+ "hobbie : artes marciales\n",
+ "\n",
+ "nombre : AnamarÃa\n",
+ "apellido : Font\n",
+ "paÃs : Venezuela\n",
+ "residencia : Alemania\n",
+ "edad : 61\n",
+ "institución : Universidad Central de Venezuela\n",
+ "hobbie : leer\n",
+ "\n",
+ "nombre : Eduardo\n",
+ "apellido : Escalante\n",
+ "paÃs : Venezuela\n",
+ "residencia : Venezuela\n",
+ "edad : 46\n",
+ "institución : Universidad Simón BolÃvar\n",
+ "hobbie : música\n",
+ "\n"
]
}
],
"source": [
- "print('hola')"
+ "info(compas, 'Venezuela')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Obtenemos la información de las personas de Venezuela."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Ahora, creamos una función para obtener el promedio de las edades de todas personas del diccionario compas."
]
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 6,
"metadata": {},
"outputs": [],
- "source": []
+ "source": [
+ "#Función para el promedio de las edades\n",
+ "\n",
+ "def pro(dict): #Argumento, el diccionario\n",
+ " s = 0 #Esta será la suma de las edades\n",
+ " n = 0 #Esta será el nųmero de elementos\n",
+ " for compa in dict.keys(): #Para cada compa del diccionario\n",
+ " s = s + dict[compa]['edad'] #Sumamos las edades \n",
+ " n = n + 1 #Número de edades\n",
+ " pro = s / n #Este serÃa el promedio\n",
+ " print('El promedio de las edades de los compas es: ')\n",
+ " print(pro, '\\n')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Teniendo la función, obtenemos el promedio de todas las edades."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "El promedio de las edades de los compas es: \n",
+ "31.083333333333332 \n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "pro(compas)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "Finalmente, imprimimos todas las instituciones de todas las personas sin repetición. Para esto creamos otra función."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "#Función para mostrar todas las instituciones sin repetición\n",
+ "def inst(dict): #Argumento, el diccionario\n",
+ " list_inst = [] #Lista de instituciones\n",
+ " print('Las instituciones de todos los compas son: ') #Un encabezado\n",
+ " print()\n",
+ " for compa in dict.keys(): #Para cada usuario\n",
+ " if dict[compa]['institución'] not in list_inst: #Si la institución no está en la lista, agregarla\n",
+ " list_inst.append(dict[compa]['institución'])\n",
+ " for inst in list_inst: #Cada institución imprimirla\n",
+ " print(inst)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Las instituciones de todos los compas son: \n",
+ "\n",
+ "Universidad Central de Venezuela\n",
+ "Universidad Nacional Mayor de San Marcos\n",
+ "Universidad Industrial de Santander\n",
+ "Universidad Nacional de Colombia\n",
+ "Universidad Simón BolÃvar\n",
+ "Universidad Nacional de IngenierÃa\n"
+ ]
+ }
+ ],
+ "source": [
+ "inst(compas)"
+ ]
}
],
"metadata": {