[{"data":1,"prerenderedAt":158},["ShallowReactive",2],{"post-es-visualizacion-de-palabras-clave-de-publicaciones-de-facebook":3,"translation-es-visualizacion-de-palabras-clave-de-publicaciones-de-facebook":157},["Reactive",4],{"id":5,"date":6,"date_gmt":7,"guid":8,"modified":10,"modified_gmt":11,"slug":12,"status":13,"type":14,"link":15,"title":16,"content":18,"excerpt":21,"author":23,"featured_media":24,"comment_status":25,"ping_status":25,"sticky":20,"template":26,"format":27,"meta":28,"categories":29,"tags":31,"class_list":33,"_links":41,"_embedded":82,"tagsResolved":143,"translations":144},536,"16. 11. 2015","2015-11-16T00:00:00",{"rendered":9},"https:\u002F\u002Fjakubferenc.cz\u002Farticle\u002Fvizualizace-klicovych-slov-z-facebook-postu","2025-07-05T13:38:32","2025-07-05T11:38:32","vizualizace-klicovych-slov-z-facebook-postu","publish","post","https:\u002F\u002Fcms.local.test\u002Fvizualizace-klicovych-slov-z-facebook-postu\u002F",{"rendered":17},"Vizualizace klíčových slov z Facebook postů",{"rendered":19,"protected":20},"\u003Cp>Mějme zadání: pro vás nejvhodnějším způsobem si poznamenejte facebookové příspěvky těch stránek, které sledujete a jejichž obsah aspoň vzdáleně připomíná reakci či kritiku na politické dění (jinak řečeno, žádné kočičky ani sofistikované analýzy sportovních utkání). Proč to?\u003C\u002Fp>\n\u003Cp>Tak zaprvé vás nejspíše překvapí, že selekce toho, čemu jste za poslední rok dali lajk, nebude až tak různorodá, jak jste si mysleli; ano, různým marketingovým nástrojům tak ulehčujete, aby si o vaší osobnosti pomocí chytrých algoritmů udělali docela jasno. Že machine learning a\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBig_data\">\u003Cbr \u002F>\nBig Data\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\nje již přítomností budoucnosti a velkým byznysem, není velká novinka; některé banky dokonce takto začínají procházejí vaše sociální data, aby upřesnily své algoritmy pro výpočet rizika, zda vám tu půjčku na novou škodovku mají dát, nebo ne. Superstar v akademických kruzích nových médií Lev Manovich zas na svém Twitteru upozornil na, že technologická společnost zaměřená na Big Data dokáže podle navštívených lokací identifikovat konzumní návyky jednotlivých uživatelů a zasadit je do předpřipravených škatulí typů konzumentů. Pro čtenáře vyznající se v přehuštěné terminologii z lehce amorfního oboru User Experience Designu se vlastně jedná o automatizované vytváření\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPersona_(user_experience)\">\u003Cbr \u002F>\nperson\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\n, čímž dokonce splňují i jednu ze základních podmínek, jak ji definoval interakční designér Alan Cooper, aby persony byly založené na reálných datech reálných uživatelů. Na mém Facebooku by automat narazil na takové bizarnosti jako například, že s chladnou hlavou sleduji jak Ádvojku a Deník referendum, tak například i Parlamentní listy, ba dokonce i Pravý prostor.\u003C\u002Fp>\n\u003Cdiv class=\"tweet-embed\">\n\u003Cblockquote class=\"twitter-tweet\" lang=\"en\">\n\u003Cp dir=\"ltr\" lang=\"en\">Skyhook categories people into consumer types based on locations they visit\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fhashtag\u002FBigData?src=hash\">\u003Cbr \u002F>\n#BigData\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ft.co\u002FCyTczxXNv4\">\u003Cbr \u002F>\nhttps:\u002F\u002Ft.co\u002FCyTczxXNv4\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ft.co\u002F2muNscmZiq\">\u003Cbr \u002F>\npic.twitter.com\u002F2muNscmZiq\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>— manovich (@manovich)\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fmanovich\u002Fstatus\u002F665612097737355264\">\u003Cbr \u002F>\nNovember 14, 2015\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>\u003Cscript async=\"\" charset=\"utf-8\" src=\"\u002F\u002Fplatform.twitter.com\u002Fwidgets.js\">\n\u003C\u002Fscript>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Cp>Z technických důvodů jsem ale nechal česká média ležet chladem, jelikož jsem měl pro lingvistickou analýzu dostupný pouze (rozsáhlý) korpus anglického jazyka. Po listování FB stránkami jsem vybral tyto více či méně extravagantní zdroje informací:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>BBC News\u003C\u002Fli>\n\u003Cli>Bloomberg Business\u003C\u002Fli>\n\u003Cli>CNN Politics\u003C\u002Fli>\n\u003Cli>Counter Current News\u003C\u002Fli>\n\u003Cli>Democracy Now\u003C\u002Fli>\n\u003Cli>Deutsche Welle\u003C\u002Fli>\n\u003Cli>Haaretz (izraelské noviny)\u003C\u002Fli>\n\u003Cli>Mondoweiss\u003C\u002Fli>\n\u003Cli>The New York Times Opinion\u003C\u002Fli>\n\u003Cli>PRESS TV (íránský zdroj v anglickém jazyce)\u003C\u002Fli>\n\u003Cli>Reuters\u003C\u002Fli>\n\u003Cli>Salon\u003C\u002Fli>\n\u003Cli>The Economist\u003C\u002Fli>\n\u003Cli>The Guardian\u003C\u002Fli>\n\u003Cli>The Intercept\u003C\u002Fli>\n\u003Cli>The New Republic\u003C\u002Fli>\n\u003Cli>The Washington Times\u003C\u002Fli>\n\u003Cli>Truthdig\u003C\u002Fli>\n\u003Cli>Wall Street Journal\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Díky Graph API od Facebooku jsem byl schopný si stáhnout přes 1000 postů, které mnou sledované zpravodajské servery nasdílely za jeden týden na své zdi. Chtěl jsem vědět, jaká klíčová slova se v určitý den a hodině nejčastěji v těchto zprávách objeví. Na lingvistickou analýzu všech těchto postů mi posloužil python a knihovna TextBlob. U každého postu jsem prošel titulek i perex a zaznamenal všechny jmenné fráze (noun phrases), ze kterých jsem učinil klíčová slova daného postu.\u003C\u002Fp>\n\u003Cblockquote>\u003Cp>Zdrojová data v JSONu po analýze jmenných frází pro každý post:\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.jakubferenc.cz\u002Fwordpress\u002Fwp-content\u002Fuploads\u002F2015\u002F11\u002Fsource_data_json.7z\">\u003Cbr \u002F>\nsource_data_json.7z\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>S výsledným JSON souborem jsem dále pracoval v javascriptu, kde jsem data parseroval a vhodně vizualizoval. Říkal jsem si, že pro analýzu výskytu klíčových slov za časové období dobře poslouží nějaký posuvník, podle kterého budu zobrazovat data pro vizualizaci.\u003C\u002Fp>\n\u003Cp>Zatímco v průběhu týdne byly klíčová slova rozprostřena rovnoměrně do mnoha témat, počátkem páteční noci začíná velmi zřetelně dominovat reakce na teroristické útoky v Paříži.\u003C\u002Fp>\n\u003Cp>Zárodečný výsledek můžete posoudit:\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fstunome.jakubferenc.cz\u002Fvizualizace\u002F\">\u003Cbr \u002F>\nhttp:\u002F\u002Fstunome.jakubferenc.cz\u002Fvizualizace\u002F\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\n",false,{"rendered":22,"protected":20},"\u003Cp>Mějme zadání: pro vás nejvhodnějším způsobem si poznamenejte facebookové příspěvky těch stránek, které sledujete a jejichž obsah aspoň vzdáleně připomíná reakci či kritiku na politické dění (jinak řečeno, žádné kočičky ani sofistikované analýzy sportovních utkání). Proč to? Tak zaprvé vás nejspíše překvapí, že selekce toho, čemu jste za poslední rok dali lajk, nebude až tak různorodá, jak [&hellip;]\u003C\u002Fp>\n",1,0,"closed","","standard",{"footnotes":26},[30],4,[32],6,[34,14,35,36,37,38,39,40],"post-536","type-post","status-publish","format-standard","hentry","category-article","tag-fixed",{"self":42,"collection":48,"about":51,"author":54,"replies":58,"version-history":61,"predecessor-version":64,"wp:attachment":68,"wp:term":71,"curies":78},[43],{"href":44,"targetHints":45},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fposts\u002F536",{"allow":46},[47],"GET",[49],{"href":50},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fposts",[52],{"href":53},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Ftypes\u002Fpost",[55],{"embeddable":56,"href":57},true,"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fusers\u002F1",[59],{"embeddable":56,"href":60},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fcomments?post=536",[62],{"count":23,"href":63},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fposts\u002F536\u002Frevisions",[65],{"id":66,"href":67},855,"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fposts\u002F536\u002Frevisions\u002F855",[69],{"href":70},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fmedia?parent=536",[72,75],{"taxonomy":73,"embeddable":56,"href":74},"category","https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fcategories?post=536",{"taxonomy":76,"embeddable":56,"href":77},"post_tag","https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Ftags?post=536",[79],{"name":80,"href":81,"templated":56},"wp","https:\u002F\u002Fapi.w.org\u002F{rel}",{"author":83,"wp:term":100},[84],{"id":23,"name":85,"url":86,"description":26,"link":87,"slug":85,"avatar_urls":88,"_links":92},"jakubferenc","https:\u002F\u002Fcms.local.test\u002Fwordpress","https:\u002F\u002Fcms.local.test\u002Fauthor\u002Fjakubferenc\u002F",{"24":89,"48":90,"96":91},"https:\u002F\u002Fsecure.gravatar.com\u002Favatar\u002Fbe0a3bc58c835417264df524152162a21507cbbd47b541b516705d259a516c1f?s=24&d=mm&r=g","https:\u002F\u002Fsecure.gravatar.com\u002Favatar\u002Fbe0a3bc58c835417264df524152162a21507cbbd47b541b516705d259a516c1f?s=48&d=mm&r=g","https:\u002F\u002Fsecure.gravatar.com\u002Favatar\u002Fbe0a3bc58c835417264df524152162a21507cbbd47b541b516705d259a516c1f?s=96&d=mm&r=g",{"self":93,"collection":97},[94],{"href":57,"targetHints":95},{"allow":96},[47],[98],{"href":99},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fusers",[101,122],[102],{"id":30,"link":103,"name":104,"slug":104,"taxonomy":73,"_links":105},"https:\u002F\u002Fcms.local.test\u002Fcategory\u002Farticle\u002F","article",{"self":106,"collection":111,"about":114,"wp:post_type":117,"curies":120},[107],{"href":108,"targetHints":109},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fcategories\u002F4",{"allow":110},[47],[112],{"href":113},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fcategories",[115],{"href":116},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Ftaxonomies\u002Fcategory",[118],{"href":119},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fposts?categories=4",[121],{"name":80,"href":81,"templated":56},[123],{"id":32,"link":124,"name":125,"slug":125,"taxonomy":76,"_links":126},"https:\u002F\u002Fcms.local.test\u002Ftag\u002Ffixed\u002F","fixed",{"self":127,"collection":132,"about":135,"wp:post_type":138,"curies":141},[128],{"href":129,"targetHints":130},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Ftags\u002F6",{"allow":131},[47],[133],{"href":134},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Ftags",[136],{"href":137},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Ftaxonomies\u002Fpost_tag",[139],{"href":140},"https:\u002F\u002Fcms.local.test\u002Fwp-json\u002Fwp\u002Fv2\u002Fposts?tags=6",[142],{"name":80,"href":81,"templated":56},[],{"en":145,"es":149,"fr":153},{"title":146,"slug":147,"description":148},"Visualising Keywords from Facebook Posts","visualising-keywords-from-facebook-posts","An experiment: a week of Facebook posts from news pages, keywords extracted with Python and TextBlob, and a JavaScript visualisation of how they shift over time.",{"title":150,"slug":151,"description":152},"Visualización de palabras clave de publicaciones de Facebook","visualizacion-de-palabras-clave-de-publicaciones-de-facebook","Un experimento: una semana de publicaciones de Facebook de medios informativos, palabras clave extraídas con Python y TextBlob y su visualización en JavaScript.",{"title":154,"slug":155,"description":156},"Visualisation des mots-clés de publications Facebook","visualisation-des-mots-cles-de-publications-facebook","Une expérience : une semaine de publications Facebook de médias d’information, des mots-clés extraits avec Python et TextBlob et leur visualisation en JavaScript.","\u003Cp>Pongamos un encargo: de la manera que mejor os convenga, apuntad las publicaciones de Facebook de aquellas páginas que seguís y cuyo contenido recuerde al menos remotamente una reacción o una crítica a la actualidad política (dicho de otro modo, nada de gatitos ni de sofisticados análisis de partidos deportivos). ¿Para qué?\u003C\u002Fp>\n\u003Cp>Pues, en primer lugar, probablemente os sorprenderá que la selección de aquello a lo que habéis dado «me gusta» durante el último año no sea tan variada como creíais; sí, así les facilitáis a distintas herramientas de marketing que, con ayuda de algoritmos inteligentes, se hagan una idea bastante clara de vuestra personalidad. Que el machine learning y el\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FBig_data\">\u003Cbr \u002F>\nBig Data\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\nson ya el presente del futuro y un gran negocio no es ninguna novedad; algunos bancos incluso empiezan a revisar así vuestros datos sociales para afinar sus algoritmos de cálculo del riesgo de si deben concederos o no ese préstamo para un Škoda nuevo. Lev Manovich, superestrella de los círculos académicos de los nuevos medios, señaló por su parte en su Twitter que una empresa tecnológica centrada en el Big Data es capaz de identificar, a partir de los lugares visitados, los hábitos de consumo de cada usuario y encajarlos en casillas predefinidas de tipos de consumidores. Para los lectores versados en la terminología sobresaturada del campo, algo amorfo, del User Experience Design, se trata en realidad de la creación automatizada de\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FPersona_(user_experience)\">\u003Cbr \u002F>\npersonas\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\n, con lo que incluso cumplen una de las condiciones básicas, tal como la definió el diseñador de interacción Alan Cooper: que las personas se basen en datos reales de usuarios reales. En mi Facebook, el autómata se toparía con rarezas como que sigo con la cabeza fría tanto Ádvojka y Deník Referendum como, por ejemplo, Parlamentní listy, e incluso Pravý prostor.\u003C\u002Fp>\n\u003Cdiv class=\"tweet-embed\">\n\u003Cblockquote class=\"twitter-tweet\" lang=\"en\">\n\u003Cp dir=\"ltr\" lang=\"en\">Skyhook categories people into consumer types based on locations they visit\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fhashtag\u002FBigData?src=hash\">\u003Cbr \u002F>\n#BigData\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ft.co\u002FCyTczxXNv4\">\u003Cbr \u002F>\nhttps:\u002F\u002Ft.co\u002FCyTczxXNv4\u003Cbr \u002F>\n\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ft.co\u002F2muNscmZiq\">\u003Cbr \u002F>\npic.twitter.com\u002F2muNscmZiq\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>— manovich (@manovich)\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fmanovich\u002Fstatus\u002F665612097737355264\">\u003Cbr \u002F>\nNovember 14, 2015\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>\u003Cscript async=\"\" charset=\"utf-8\" src=\"\u002F\u002Fplatform.twitter.com\u002Fwidgets.js\">\n\u003C\u002Fscript>\u003C\u002Fp>\n\u003C\u002Fdiv>\n\u003Cp>Por razones técnicas, sin embargo, dejé de lado los medios checos, ya que para el análisis lingüístico solo tenía a mi disposición un (extenso) corpus de la lengua inglesa. Tras hojear páginas de FB, seleccioné estas fuentes de información más o menos extravagantes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>BBC News\u003C\u002Fli>\n\u003Cli>Bloomberg Business\u003C\u002Fli>\n\u003Cli>CNN Politics\u003C\u002Fli>\n\u003Cli>Counter Current News\u003C\u002Fli>\n\u003Cli>Democracy Now\u003C\u002Fli>\n\u003Cli>Deutsche Welle\u003C\u002Fli>\n\u003Cli>Haaretz (periódico israelí)\u003C\u002Fli>\n\u003Cli>Mondoweiss\u003C\u002Fli>\n\u003Cli>The New York Times Opinion\u003C\u002Fli>\n\u003Cli>PRESS TV (fuente iraní en lengua inglesa)\u003C\u002Fli>\n\u003Cli>Reuters\u003C\u002Fli>\n\u003Cli>Salon\u003C\u002Fli>\n\u003Cli>The Economist\u003C\u002Fli>\n\u003Cli>The Guardian\u003C\u002Fli>\n\u003Cli>The Intercept\u003C\u002Fli>\n\u003Cli>The New Republic\u003C\u002Fli>\n\u003Cli>The Washington Times\u003C\u002Fli>\n\u003Cli>Truthdig\u003C\u002Fli>\n\u003Cli>Wall Street Journal\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Gracias a la Graph API de Facebook pude descargar más de 1000 publicaciones que los medios informativos que sigo compartieron en su muro durante una semana. Quería saber qué palabras clave aparecían con más frecuencia en estas noticias en un día y una hora determinados. Para el análisis lingüístico de todas estas publicaciones me serví de Python y de la biblioteca TextBlob. En cada publicación recorrí el titular y la entradilla y registré todos los sintagmas nominales (noun phrases), que convertí en las palabras clave de esa publicación.\u003C\u002Fp>\n\u003Cblockquote>\u003Cp>Datos de origen en JSON tras el análisis de sintagmas nominales de cada publicación:\u003Cbr \u002F>\n\u003Ca href=\"http:\u002F\u002Fwww.jakubferenc.cz\u002Fwordpress\u002Fwp-content\u002Fuploads\u002F2015\u002F11\u002Fsource_data_json.7z\">\u003Cbr \u002F>\nsource_data_json.7z\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>Después trabajé con el archivo JSON resultante en JavaScript, donde procesé los datos y los visualicé de forma adecuada. Pensé que, para analizar la aparición de palabras clave a lo largo de un periodo de tiempo, vendría bien algún tipo de control deslizante con el que mostrar los datos de la visualización.\u003C\u002Fp>\n\u003Cp>Mientras que durante la semana las palabras clave se repartían de manera uniforme entre muchos temas, a partir del comienzo de la noche del viernes empieza a dominar con toda claridad la reacción a los atentados terroristas de París.\u003C\u002Fp>\n\u003Cp>Podéis juzgar vosotros mismos el resultado embrionario:\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fstunome.jakubferenc.cz\u002Fvizualizace\u002F\">\u003Cbr \u002F>\nhttp:\u002F\u002Fstunome.jakubferenc.cz\u002Fvizualizace\u002F\u003Cbr \u002F>\n\u003C\u002Fa>\u003C\u002Fp>",1790905693918]