{"id":5824,"date":"2018-08-31T23:15:05","date_gmt":"2018-09-01T04:15:05","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/ccpg1001\/?p=5824"},"modified":"2026-04-05T18:04:26","modified_gmt":"2026-04-05T23:04:26","slug":"s2eva2018ti_t1-niveles-seguridad-por-ciudad","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-s2eva20\/s2eva2018ti_t1-niveles-seguridad-por-ciudad\/","title":{"rendered":"s2Eva2018TI_T1 Niveles seguridad por ciudad"},"content":{"rendered":"\n<p><em><strong>Ejercicio<\/strong><\/em>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-2eva20\/2eva2018ti_t1-niveles-seguridad-por-ciudad\/\" data-type=\"post\" data-id=\"5818\">2Eva2018TI_T1 Niveles seguridad por ciudad<\/a><\/p>\n\n\n\n<p>Propuesta de soluci\u00f3n en <strong>Python<\/strong>:<\/p>\n\n\n\n<p>Como referencia para el algoritmo se usa la tabla:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>ciudad<\/td><td>robo veh\u00edculos<\/td><td>asalto<\/td><\/tr><tr><td>Guayaquil<\/td><td>605<\/td><td>6345<\/td><\/tr><tr><td>Cuenca<\/td><td>123<\/td><td>676<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>El m\u00f3dulo cargarDatos() desde un archivo se guarda como ecu911.py<\/p>\n\n\n\n<p>La secci\u00f3n no era necesario escribirla en la evaluaci\u00f3n, se podr\u00eda suponer que ya estaba escrita.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Algoritmo en Python<\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# CCPG1001-Fundamentos de programaci\u00f3n FIEC-ESPOL\n# 2Eva_IT2018_T1 Niveles seguridad por ciudad\nimport numpy as np\nimport ecu911 es ecu\n\ndef titulostabla(tabla_dic):\n    ciudad = tabla_dic.keys()\n    ciudad = list(ciudad)\n    \n    unaciudad = ciudad&#x5B;0]\n    unregistro = tabla_dic&#x5B;unaciudad]\n    \n    tipodelito = unregistro.keys()\n    tipodelito = list(tipodelito)\n    \n    titulos = &#x5B;ciudad,tipodelito]\n    return(titulos)\n\ndef crearMatriz(tabla_dic,titulos):\n    ciudad = titulos&#x5B;0]\n    tipodelito = titulos&#x5B;1]\n    n = len(ciudad)\n    m = len(tipodelito)\n    \n    tabla = np.zeros(shape=(n,m),dtype = int)\n    f = 0\n    while not(f&gt;=n):\n        c = 0\n        unaciudad = ciudad&#x5B;f]\n        registro = tabla_dic&#x5B;unaciudad]\n        while not(c&gt;=m):\n            untipo = tipodelito&#x5B;c]\n            valor = registro&#x5B;untipo]\n            tabla&#x5B;f,c] = valor\n            c = c+1\n        f = f+1\n        \n    return(tabla)\n\ndef ciudadesMenosSeguras(matriz, titulos, untipo, poblacion):\n    ciudad = titulos&#x5B;0]\n    tipodelito = titulos&#x5B;1]\n    \n    columna = tipodelito.index(untipo)\n    incidentes = matriz&#x5B;:,columna]\n    indicador = incidentes\/poblacion\n\n    cual = np.argmax(indicador)\n    insegura = ciudad&#x5B;cual]\n    # Tarea: encontrar las siguientes menos seguras\n    return(insegura)\n\n# PROGRAMA PRUEBA -------------------\n# INGRESO\n\nnombrearchivo = 'reporteincidentes.txt'\ntabla = ecu.cargardatos(nombrearchivo)\n\n# Usado si no dispone del m\u00f3dulo y archivo.txt\n#tabla_dic = {\n#    'Guayaquil':{'robo vehiculo':605, 'asalto':6345},\n#    'Cuenca':   {'robo vehiculo':123, 'asalto': 676}\n#    }\npoblacion = np.array(&#x5B;2000, 1000])\nuntipo = 'asalto'\n\n# PROCEDIMIENTO\ntitulos = titulostabla(tabla_dic)\nmatriz = crearMatriz(tabla_dic,titulos)\ninseguras = ciudadesMenosSeguras(matriz, titulos, untipo, poblacion)\n\n# SALIDA\nprint('Los t\u00edtulos de la tabla son:')\nprint(titulos)\nprint('La matriz de datos: ')\nprint(matriz)\nprint('La menos segura: ')\nprint(inseguras)\n<\/pre><\/div>\n\n\n<p>Usando el m\u00f3dulo es necesario disponer de un archivo <strong><em>reporteincidentes.txt<\/em><\/strong> con datos, por facilidad en el mismo directorio de trabajo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Guayaquil,605,6345\nCuenca,123,676<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 2Eva2018TI_T1 Niveles seguridad por ciudad Propuesta de soluci\u00f3n en Python: Como referencia para el algoritmo se usa la tabla: ciudad robo veh\u00edculos asalto Guayaquil 605 6345 Cuenca 123 676 El m\u00f3dulo cargarDatos() desde un archivo se guarda como ecu911.py La secci\u00f3n no era necesario escribirla en la evaluaci\u00f3n, se podr\u00eda suponer que ya estaba [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-fp-ejemplos","format":"standard","meta":{"footnotes":""},"categories":[136],"tags":[58,157],"class_list":["post-5824","post","type-post","status-publish","format-standard","hentry","category-fp-s2eva20","tag-ejemplos-python","tag-fundamentos-programacion"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/comments?post=5824"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5824\/revisions"}],"predecessor-version":[{"id":23681,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/5824\/revisions\/23681"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=5824"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=5824"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=5824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}