{"id":21990,"date":"2017-01-06T12:46:11","date_gmt":"2017-01-06T17:46:11","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/estg1003\/?p=1240"},"modified":"2026-04-16T09:26:47","modified_gmt":"2026-04-16T14:26:47","slug":"alfabeto-teclado-matriz-transicion","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/stp-aplica\/alfabeto-teclado-matriz-transicion\/","title":{"rendered":"2.1 Alfabeto - Matriz Transici\u00f3n"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Funciones de Matriz de transici\u00f3n de alfabeto<\/h2>\n\n\n\n<p><strong>Referencia: <\/strong> Ross 2.2 p25, <a href=\"https:\/\/es.wikipedia.org\/wiki\/Teletipo\">Telex, TTY o teletipo(Wikipedia)<\/a><\/p>\n\n\n\n<p>Es posible determinar la matriz de transici\u00f3n entre las letras del alfabeto continuando con el ejercicio de Funciones de probabilidad o masa.<\/p>\n\n\n\n<p>Para procesar el texto se usa como entrada un archivo en formato .txt, analizando por l\u00ednea, por s\u00edmbolo y contando las <strong>veces<\/strong> que hay transici\u00f3n desde una letra del <strong>alfabeto<\/strong>.<\/p>\n\n\n\n<p>Nota: Considere solo el total de letras, no el total de s\u00edmbolos (no incluye \",;.!?\" etc.)<\/p>\n\n\n\n<p>El resultado que se obtiene es la matriz en los archivo adjuntos:<\/p>\n\n\n\n<p><a href=\"https:\/\/www.dropbox.com\/s\/vxtdzledvseea87\/transicionletras.txt?dl=0\">transicionesletras.txt<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.dropbox.com\/s\/m48g69o2kbojk02\/transicionletrasfreq.txt?dl=0\">transicionesletrasfreq.txt<\/a><\/p>\n\n\n\n<p>pueden ser importados para otro algoritmo, programa u hoja electr\u00f3nica<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>matriz de conteo: \n&#091;&#091;   1 318 440 874   14  31  56  59    8  20  0 729 314  631 27   0   78   43  749  745  210  85  64  1  27 67 38]\n &#091; 134   0   0   0   86   0   0   0  153   8  0 184   0    2  0  56    0    0  167   67    3  40   0  0   0  1  0]\n &#091; 427   0  69   0  318   1   0 135 1064   0  2  63   0    0  0 877    0    0   82    0  174 394   0  0   0  0  0]\n &#091; 677   0   0   0 1872   0   8   1  513   1  0   1  20    0  0 689    0    2   36    0    4  71   5  0   0  0  0]\n &#091; 155  82 416 229   12  53 134   3   21  60 17 655 340 1921 12  34  112   18 1328 1479  138  27  61 24 139 37 40]\n &#091;  45   0   0   0  111   0   0   0  194   0  0  18   0    0  0  48    0    0   25    0    0 160   0  0   0  0  0]\n &#091;  90   0   0   0  104   0   1   0  108   0  1  22   2   30  0 114    0    0  105    2    1 146   0  0   0  0  0]\n &#091; 261   0   0   0   99   0   0   0   15   0  0   0   3    3  0 183    0    0    1    1    7  42   0  1   0  0  0]\n &#091; 499 165 439 546  473 123 155   3    0   6  0 143 371  778  4 326   60   12  281  326  285   2 162  0   1  0 37]\n &#091;  29   0   0   0   48   0   0   0    6   0  0   0   0    0  0  46    0    0    0    0    0  29   0  0   0  0  0]\n &#091;  19   0   0   0   12   0   0   0    0   0  0   0   0    0  0   1    0    0    0    0    0   0   0  0   0  0  0]\n &#091;1299   0  19  20  513   3  53   0  281   0  1 172  46    2  0 560    5   28    4   27   97 152  12  0   0  3  0]\n &#091; 379  80   0   0  531   0   0   0  374   0  0   0   6    2  0 588  312    0   12    1    1  66   0  0   0  1  0]\n &#091; 501   2 447 379  361  63  86   0  385   6  1   0  33   13  0 541    1   16    2  214 1034 100  38  1   0  0 34]\n &#091;  20   0   0   0    3   0   0   0    0   0  0   0   0    0  0  22    0    0    0    0    0   0   0  0   0  0  0]\n &#091;   0 108 116 197   43  28  54   4   10  12  0 165 404  768  3   0  125    2  628 1356   97   6  18  0   5 11  5]\n &#091; 334   0  32   0  310   0   0   2  116   0  0 193   0    0  0 560    1    0  412    1   29 222   0  0   0  0  0]\n &#091;   0   0   0   0    0   0   0   0    0   0  0   0   0    0  0   0    0    0    0    0    0 692   0  0   0  0  0]\n &#091;1058  16  74 111  774  22  57   0  486   1  1  40  93   35  0 522   21   13  105  129  191  39  24  0   0  3 51]\n &#091; 306   2 118  31  576  40   0   2  694   0  2   2  92    0  0 333  150    5    0    4  731 374   2  1   0  0  0]\n &#091; 840   0   4   0  954   0   1   8  429   0  0   3   0    3  0 771    0    0  475    1    6 150   0  0   0  0  4]\n &#091; 232  50 100  54  976   9  25   1  134   5  0 166  82  758  0  12   69    0  115  166   83   0   9  0   0 38  9]\n &#091; 112   0   0   0  272   0   0   0  168   0  0   0   0    0  0  68    0    0    1    0    0  10   0  0   0  0  0]\n &#091;   0   0   0   0    9   0   0   0    1   0  0   0   0    0  0   0    0    0    0    1   21   0   0  0   0  0  0]\n &#091;  14   0  13   0    0   0   0   0   81   0  0   0   0    0  0   0   46    0    0    0   21   0   0  0   0  0  0]\n &#091;  33   0   0   0   22   0   0   0    0   0  0   0   0    2  0  36    0    0    0    0    0   2   0  0   0  0  0]\n &#091; 117   0   7   0    0   0   3   0    0   0  0   0   0    0  0  22    0    0    0    0    2   3   0  0   0  0  0]]<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>matriz de conteo:\n&#091;&#091;  1.77e-04  5.64e-02  7.81e-02  1.55e-01   2.48e-03  5.50e-03  9.94e-03  1.04e-02   1.42e-03  3.55e-03  0.00e+00  1.29e-01   5.57e-02  1.12e-01  4.79e-03  0.00e+00   1.38e-02  7.63e-03  1.33e-01  1.32e-01   3.73e-02  1.51e-02  1.13e-02  1.77e-04   4.79e-03  1.19e-02  6.75e-03]\n &#091;  1.48e-01  0.00e+00  0.00e+00  0.00e+00   9.54e-02  0.00e+00  0.00e+00  0.00e+00   1.69e-01  8.87e-03  0.00e+00  2.04e-01   0.00e+00  2.21e-03  0.00e+00  6.21e-02   0.00e+00  0.00e+00  1.85e-01  7.43e-02   3.32e-03  4.43e-02  0.00e+00  0.00e+00   0.00e+00  1.10e-03  0.00e+00]\n &#091;  1.18e-01  0.00e+00  1.91e-02  0.00e+00   8.81e-02  2.77e-04  0.00e+00  3.74e-02   2.95e-01  0.00e+00  5.54e-04  1.74e-02   0.00e+00  0.00e+00  0.00e+00  2.43e-01   0.00e+00  0.00e+00  2.27e-02  0.00e+00   4.82e-02  1.09e-01  0.00e+00  0.00e+00   0.00e+00  0.00e+00  0.00e+00]\n ...\n &#091;  7.59e-01  0.00e+00  4.54e-02  0.00e+00   0.00e+00  0.00e+00  1.94e-02  0.00e+00   0.00e+00  0.00e+00  0.00e+00  0.00e+00   0.00e+00  0.00e+00  0.00e+00  1.42e-01   0.00e+00  0.00e+00  0.00e+00  0.00e+00   1.29e-02  1.94e-02  0.00e+00  0.00e+00   0.00e+00  0.00e+00  0.00e+00]]<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Instrucciones en Python<\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code alignwide\"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# procesar un archivo de texto\n# Determinar la matriz de transici\u00f3n\n# para las letras del alfabeto(incluye \u00f1)\nimport numpy as np\n\n# INGRESO\n# archivo=input('archivo a leer.txt: ')\nnombrearchivo =' eureka_poe_edgar_allan.txt'\n\n# PROCEDIMIENTO\nalfabeto = 'abcdefghijklmn\u00f1opqrstuvwxyz'\nk = len(alfabeto)\nmatriz     = np.zeros(shape=(k,k),dtype=int)\ntransicion =\nnp.zeros(shape=(k,k),dtype=float)\ntotal = 0\n\n# procesa el archivo\narchivo  = open(nombrearchivo,'r')\nunalinea = archivo.readline()\nwhile not(unalinea == ''):\n    unalinea = unalinea.strip('\\n')\n    unalinea = unalinea.lower()\n    m = len(unalinea)\n    for j in range(0,m-1,1):\n        unsimbolo = unalinea&#x5B;j]\n        donde = alfabeto.find(unsimbolo)\n        siguiente = unalinea&#x5B;j+1]\n        dondesig  = alfabeto.find(siguiente)\n        if (donde&gt;=0 and dondesig&gt;=0):\n            #Si no encuentra es negativo\n            matriz&#x5B;donde]&#x5B;dondesig] = matriz&#x5B;donde]&#x5B;dondesig]+1\n            total = total + 1\n    unalinea = archivo.readline()\narchivo.close()\n\n# Determina matriz de transicion\nfor i in range(0,k,1):\n    suma = np.sum(matriz&#x5B;i,:])\n    transicion&#x5B;i]=matriz&#x5B;i,:]\/suma\n\n# Salida\nprint('matriz de conteo: ')\nprint(matriz)\nprint('matriz de transici\u00f3n:')\nprint(transicion)\nnp.savetxt('transicionletras.txt',matriz, fmt='%d')\nnp.savetxt('transicionletrasfreq.txt',transicion)\n<\/pre><\/div>","protected":false},"excerpt":{"rendered":"<p>Funciones de Matriz de transici\u00f3n de alfabeto Referencia: Ross 2.2 p25, Telex, TTY o teletipo(Wikipedia) Es posible determinar la matriz de transici\u00f3n entre las letras del alfabeto continuando con el ejercicio de Funciones de probabilidad o masa. Para procesar el texto se usa como entrada un archivo en formato .txt, analizando por l\u00ednea, por s\u00edmbolo [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-stp-ejercicios","format":"standard","meta":{"footnotes":""},"categories":[202],"tags":[],"class_list":["post-21990","post","type-post","status-publish","format-standard","hentry","category-stp-aplica"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/21990","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=21990"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/21990\/revisions"}],"predecessor-version":[{"id":24325,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/21990\/revisions\/24325"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=21990"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=21990"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=21990"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}