{"id":154588,"date":"2022-04-07T10:54:58","date_gmt":"2022-04-07T09:54:58","guid":{"rendered":"https:\/\/multi.liora.io\/?p=154588"},"modified":"2026-02-27T16:06:08","modified_gmt":"2026-02-27T15:06:08","slug":"como-generar-un-wordcloud-con-python","status":"publish","type":"post","link":"https:\/\/liora.io\/es\/como-generar-un-wordcloud-con-python","title":{"rendered":"\u00bfC\u00f3mo generar un  Wordcloud con Python?"},"content":{"rendered":"\n<p><strong>Las Wordcloud (nubes de palabras) son herramientas \u00fatiles para resumir los conceptos m\u00e1s importantes de un texto, una p\u00e1gina web o un libro. Cuanto m\u00e1s presente est\u00e9 una palabra en el texto considerado, m\u00e1s grande aparecer\u00e1 en la nube de palabras. Hay muchos sitios y aplicaciones para generar nubes de palabras de forma f\u00e1cil y gratuita. Por ejemplo, aqu\u00ed hay uno que se gener\u00f3 a partir de uno de nuestros art\u00edculos de introducci\u00f3n a la ciencia de los datos :<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2022\/04\/es.png\" alt=\"\" \/><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><em>Si quieres personalizar tu nube de palabras para hacerla m\u00e1s usable y m\u00e1s bonita, puede ser una buena idea utilizar Python en lugar de una aplicaci\u00f3n encontrada en Internet.<\/em><\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-como-crear-tu-nube-de-palabras-con-python\">\u00bfC\u00f3mo crear tu nube de palabras con python?<\/h2>\n\n\n\n<p>Lo primero que hay que hacer es importar las bibliotecas que vamos a necesitar. <i>WordCloud <\/i>y <i>matplotlib.pyplot<\/i> nos permitir\u00e1n mostrar una nube de palabras b\u00e1sica, mientras que <i>numpy <\/i>e <i>Image <\/i>ser\u00e1n \u00fatiles m\u00e1s adelante para personalizar la forma de nuestra nube de palabras.<\/p>\n\n\n\n<p>Comenzamos almacenando el texto que queremos transformar en una nube de palabras en una variable (llamada aqu\u00ed \u00abtexto\u00bb). Para comparar los resultados obtenidos en la aplicaci\u00f3n con los obtenidos en <a href=\"https:\/\/liora.io\/es\/python-o-r-que-elegir\">Python<\/a>, utilizamos el mismo texto que antes.\u00a0<\/p>\n\n\n\n<p>Estamos listos para publicar nuestra primera nube de palabras :<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2022\/04\/esp.png\" alt=\"\" \/><\/figure>\n\n\n\n<p>Certes, Por supuesto, esta nube de palabras es a\u00fan menos utilizable que la que generamos a partir de un sitio, pero \u00a1no te asustes! Pronto lo mejoraremos.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><em>Lo primero que llama la atenci\u00f3n es que palabras como &#8216;de&#8217;, &#8216;la&#8217;, &#8216;le&#8217;&#8230; tienen una importancia desmesurada en nuestra nube de palabras (esto es l\u00f3gico ya que se utilizan con mucha frecuencia). Sin embargo, no son de ninguna ayuda cuando se trata de localizar los conceptos clave en un texto: nos gustar\u00eda deshacernos de ellos.<\/em><\/p>\n<\/blockquote>\n\n\n\n<p>Afortunadamente, es f\u00e1cil <b>eliminar las palabras irrelevantes almacen\u00e1ndolas<\/b> en una lista y utilizando el argumento <b>\u00abstopwords\u00bb<\/b>:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2022\/04\/espa.png\" alt=\"\" \/><\/figure>\n\n\n\n<p>\u00a1Esto ya es mucho mejor! Por fin podemos obtener informaci\u00f3n relevante de nuestra nube de palabras. Queda un problema: el renderizado no es realmente bonito, tenemos que arreglarlo.<\/p>\n\n\n\n<p>Empecemos por personalizar su forma. Para ello, simplemente tenemos que elegir una m\u00e1scara (por ejemplo aqu\u00ed utilizaremos una m\u00e1scara de nube, disponible en google images).<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/01\/Capture-de\u0301cran-2021-01-27-a\u0300-17.16.44.png\" alt=\"Wordcloud\" \/><\/figure>\n\n\n\n<p>Para que esta m\u00e1scara pueda ser utilizada por la biblioteca de python, necesitamos transformarla en un array de numpy. Si un valor de la matriz es \u00ab255\u00bb, no aparecer\u00e1 ninguna palabra en el campo correspondiente.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2022\/04\/espagne.png\" alt=\"\" style=\"width:auto;height:400px\" \/><\/figure>\n\n\n\n<p>Por \u00faltimo, podemos personalizar el color de nuestra nube de palabras utilizando el m\u00e9todo de <b>recolor<\/b>.<\/p>\n\n\n\n<p>Aqu\u00ed, creamos una funci\u00f3n de color que colorea cada palabra en un tono azul :<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2022\/04\/espagnn.png\" alt=\"\" style=\"width:auto;height:450px\" \/><\/figure>\n\n\n\n<p>Por fin tenemos una <b>Wordcloud <\/b>utilizable y (relativamente) bonita. Adem\u00e1s, s\u00f3lo hemos utilizado las funciones m\u00e1s b\u00e1sicas de la biblioteca de <a href=\"\/\" target=\"_blank\" rel=\"noopener\">Python<\/a>.\u00a0<\/p>\n\n\n\n<p>Si quiere ir m\u00e1s all\u00e1 y aprender cosas a\u00fan m\u00e1s interesantes que las nubes de palabras, puede ponerse en contacto con nosotros directamente en l\u00ednea para obtener m\u00e1s informaci\u00f3n sobre<b> <a href=\"https:\/\/liora.io\/es\/cita\">nuestras formaciones en ciencia de datos.<\/a><\/b><\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"\/es\/nuestros-cursos-de-data\">Descubrir nuestros cursos de data<\/a><\/div>\n<\/div>\n\n\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"\u00bfC\u00f3mo crear tu nube de palabras con python?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Para crear una nube de palabras con Python, primero se importan las bibliotecas necesarias: WordCloud y matplotlib.pyplot para la visualizaci\u00f3n b\u00e1sica, y numpy e Image para personalizar la forma. Luego se almacena el texto en una variable y se genera la nube inicial. Sin embargo, esta primera versi\u00f3n suele incluir palabras irrelevantes como art\u00edculos o preposiciones (stop words), que pueden eliminarse creando una lista y usando el argumento 'stopwords' para mejorar la relevancia de los t\u00e9rminos mostrados.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Personalizaci\u00f3n de la nube de palabras\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Para mejorar la apariencia de la nube de palabras, se puede personalizar su forma eligiendo una m\u00e1scara (por ejemplo, una imagen de nube) y transform\u00e1ndola en un array de numpy, donde los valores '255' indican \u00e1reas sin palabras. Tambi\u00e9n es posible personalizar los colores utilizando el m\u00e9todo de recolor, creando funciones que asignen colores espec\u00edficos, como diferentes tonos de azul, para obtener un resultado visualmente m\u00e1s atractivo y usable.\"\n      }\n    }\n  ]\n}\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Las Wordcloud (nubes de palabras) son herramientas \u00fatiles para resumir los conceptos m\u00e1s importantes de un texto, una p\u00e1gina web o un libro. Cuanto m\u00e1s presente est\u00e9 una palabra en el texto considerado, m\u00e1s grande aparecer\u00e1 en la nube de palabras. Hay muchos sitios y aplicaciones para generar nubes de palabras de forma f\u00e1cil y [&hellip;]<\/p>\n","protected":false},"author":47,"featured_media":39367,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2440],"class_list":["post-154588","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-ia"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/154588","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/users\/47"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/comments?post=154588"}],"version-history":[{"count":4,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/154588\/revisions"}],"predecessor-version":[{"id":184722,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/154588\/revisions\/184722"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media\/39367"}],"wp:attachment":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media?parent=154588"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/categories?post=154588"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}