"- 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, pais de origen, ciudad donde residen, su especialidad científica, nombre del instituto en que estudian/laboran, y un hobbie o afició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 llaves “nombre”, “apellido”, “país”, “residencia”, “edad”, “institución”, “hobbie”.\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": [
"## Resolución\n",
"- Primero creamos un diccionario principal.\n",
"- A cada llave se le asociará un nuevo diccionario con la informacion de los compañeros."
" 'FernandezN': {'edad':27, 'nombre': 'nicolas', 'apellido':'fernandez', 'hobbie':'piano', 'institucion': 'Universidad Nacional Mayor de San Marcos' , 'pais':'argentina', 'residencia':'peru'}}"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'edad': 27,\n",
" 'nombre': 'cristian',\n",
" 'apellido': 'velandia',\n",
" 'hobbie': 'anime',\n",
" 'institucion': 'Universida Nacional de Colombia',\n",
" 'pais': 'colombia',\n",
" 'residencia': 'colombia'}"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"compas['VelandiaC'] # Por medio de la llave ingresamos a la informacion dentro de VelandiaC "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Aqui utilizamos 2 llaves, la una para el diccionario principal, y la otra para el diccionario con la información de los compañeros, los cuales estan dentro del diccionario principal."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'colombia'"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"compas['VelandiaC']['nombre']\n",
"compas['VelandiaC']['pais']"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"VelandiaC\n",
"edad : 27\n",
"nombre : cristian\n",
"apellido : velandia\n",
"hobbie : anime\n",
"institucion : Universida Nacional de Colombia\n",
"pais : colombia\n",
"residencia : colombia\n",
"--------------------------------------\n",
"bermudezj\n",
"edad : 25\n",
"nombre : jesus\n",
"apellido : bermudez\n",
"hobbie : senderismo\n",
"institucion : Universida Nacional de Colombia\n",
"pais : colombia\n",
"residencia : colombia\n",
"--------------------------------------\n",
"Nicole\n",
"edad : 23\n",
"nombre : angie\n",
"apellido : hernandez\n",
"hobbie : dibujo\n",
"institucion : Universidad Industrial de Santander\n",
"pais : colombia\n",
"residencia : colombia\n",
"--------------------------------------\n"
]
}
],
"source": [
"def funcion_dic(diccionario, pais):\n",
" '''Funcion que recibe un diccionario y un pais y retorna en forma tabulada la informacion de cada compañero \n",
" que pertenesca a cada pais.'''\n",
" for usuarios in diccionario.keys():\n",
" if diccionario[usuarios]['pais'] == pais: # verificamos que el pais de los compañeros coincide con el ingresado\n",
" print(usuarios)\n",
" for key, value in diccionario[usuarios].items():\n",
" '''Funcion que recibe un diccionario y extrae el promedio de edades'''\n",
" promedio_edad= 0\n",
" i = 0 \n",
" for usuarios in diccionario.keys():\n",
" promedio_edad = promedio_edad + diccionario[usuarios]['edad'] # sumamos todas las edades de cada compañero\n",
" i += 1\n",
" return promedio_edad/i"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"25.5"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"edad_promedio(compas)"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['Escuela Politecnica Nacional',\n",
" 'Universida Nacional de Colombia',\n",
" 'Universidad Nacional de Ingeniería',\n",
" 'Universidad Industrial de Santander',\n",
" 'Universidad Nacional Mayor de San Marcos']"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def institucion(diccionario):\n",
" '''Funcion que retorna todas las intituciones a las que perteneca cada compañero, sin repeticion'''\n",
" instituciones = []\n",
" instituciones_final = []\n",
" for usuarios in diccionario.keys():\n",
" instituciones.append(diccionario[usuarios]['institucion']) # extraemos el nombre de cada institucion\n",
" for i in instituciones: # para evitar repeticiones al mostrar las intituciones\n",
" if i not in instituciones_final:\n",
" instituciones_final.append(i)\n",
" return instituciones_final\n",
"institucion(compas)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
%% Cell type:markdown id: tags:
## Nombre: Jennifer Ortega
### Ejercicio No. 3 - Amigos congueros
%% Cell type:markdown id: tags:
- 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, pais de origen, ciudad donde residen, su especialidad científica, nombre del instituto en que estudian/laboran, y un hobbie o afició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 llaves “nombre”, “apellido”, “país”, “residencia”, “edad”, “institución”, “hobbie”.
- 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 id: tags:
## Resolución
- Primero creamos un diccionario principal.
- A cada llave se le asociará un nuevo diccionario con la informacion de los compañeros.
'VelandiaC':{'edad':27,'nombre':'cristian','apellido':'velandia','hobbie':'anime','institucion':'Universida Nacional de Colombia','pais':'colombia','residencia':'colombia'},
'Aldo':{'edad':26,'nombre':'aldo','apellido':'arriola','hobbie':'dibujo','institucion':'Universidad Nacional de Ingeniería','pais':'peru','residencia':'peru'},
'bermudezj':{'edad':25,'nombre':'jesus','apellido':'bermudez','hobbie':'senderismo','institucion':'Universida Nacional de Colombia','pais':'colombia','residencia':'colombia'},
'Nicole':{'edad':23,'nombre':'angie','apellido':'hernandez','hobbie':'dibujo','institucion':'Universidad Industrial de Santander','pais':'colombia','residencia':'colombia'},
'FernandezN':{'edad':27,'nombre':'nicolas','apellido':'fernandez','hobbie':'piano','institucion':'Universidad Nacional Mayor de San Marcos','pais':'argentina','residencia':'peru'}}
```
%% Cell type:code id: tags:
``` python
compas['VelandiaC']# Por medio de la llave ingresamos a la informacion dentro de VelandiaC
```
%% Output
{'edad': 27,
'nombre': 'cristian',
'apellido': 'velandia',
'hobbie': 'anime',
'institucion': 'Universida Nacional de Colombia',
'pais': 'colombia',
'residencia': 'colombia'}
%% Cell type:markdown id: tags:
Aqui utilizamos 2 llaves, la una para el diccionario principal, y la otra para el diccionario con la información de los compañeros, los cuales estan dentro del diccionario principal.
%% Cell type:code id: tags:
``` python
compas['VelandiaC']['nombre']
compas['VelandiaC']['pais']
```
%% Output
'colombia'
%% Cell type:code id: tags:
``` python
deffuncion_dic(diccionario,pais):
'''Funcion que recibe un diccionario y un pais y retorna en forma tabulada la informacion de cada compañero
que pertenesca a cada pais.'''
forusuariosindiccionario.keys():
ifdiccionario[usuarios]['pais']==pais:# verificamos que el pais de los compañeros coincide con el ingresado
print(usuarios)
forkey,valueindiccionario[usuarios].items():
print(key,':',value)
print('--------------------------------------')
funcion_dic(compas,'colombia')
```
%% Output
VelandiaC
edad : 27
nombre : cristian
apellido : velandia
hobbie : anime
institucion : Universida Nacional de Colombia
pais : colombia
residencia : colombia
--------------------------------------
bermudezj
edad : 25
nombre : jesus
apellido : bermudez
hobbie : senderismo
institucion : Universida Nacional de Colombia
pais : colombia
residencia : colombia
--------------------------------------
Nicole
edad : 23
nombre : angie
apellido : hernandez
hobbie : dibujo
institucion : Universidad Industrial de Santander
pais : colombia
residencia : colombia
--------------------------------------
%% Cell type:code id: tags:
``` python
defedad_promedio(diccionario):
'''Funcion que recibe un diccionario y extrae el promedio de edades'''
promedio_edad=0
i=0
forusuariosindiccionario.keys():
promedio_edad=promedio_edad+diccionario[usuarios]['edad']# sumamos todas las edades de cada compañero
i+=1
returnpromedio_edad/i
```
%% Cell type:code id: tags:
``` python
edad_promedio(compas)
```
%% Output
25.5
%% Cell type:code id: tags:
``` python
definstitucion(diccionario):
'''Funcion que retorna todas las intituciones a las que perteneca cada compañero, sin repeticion'''
instituciones=[]
instituciones_final=[]
forusuariosindiccionario.keys():
instituciones.append(diccionario[usuarios]['institucion'])# extraemos el nombre de cada institucion
foriininstituciones:# para evitar repeticiones al mostrar las intituciones