Programación

Dos descomposiciones positivas de tablas de contingencia

Voy a seguir poco a poco con este tema mío tan recurrente de las factorizaciones (aproximadas) positivas de matrices (también positivas). No escribo más porque, como casi todo lo que llamamos trabajo es, simplemente ruido, las cosas que llevan a otras nunca pasan por el asunto en cuestión. Pero hay dos descomposiciones positivas de matrices positivas bien conocidas de todos. La primera es esta: $latex X=IX$, donde $latex X$ es una matriz de dimensión nxm e $latex I$ es la cosa más parecida a la matriz identidad de dicha dimensión.

Estrategias escalables (con R)

Hay quienes preguntan cómo cargar con R un csv de 8GB en un portátil de 4GB de RAM. La verdad, he leído respuestas la mar de extravagantes a este tipo de cuestiones: p.e., recomendar SQLite. Yo recomendaría Scalable Strategies for Computing with Massive Data. Entre otras cosas, porque para eso lo escribieron sus autores: para que se lea. Y porque está cargado de razón y buenos consejos. Una cosa con la que tropezará enseguida quien lo hojee es:

Vectorización en R: un contraejemplo

No hay regla sin excepción, dicen. Para la recomendación casi única para quienes se quejan de la lentitud de R, es decir, ¡vectoriza!, he encontrado hoy una. Sí, el artículo deja R por los suelos. En el fondo, no tanto, porque viene a decir que R es malo para lo que la documentación de R dice que es malo: véase cómo en Writing R Extensions nos advierten que la convolución is hard to do fast in interpreted R code, but easy in C code.

Dos citas de 1983 sobre estadística y métodos computacionales

Rescato aquí para mis lectores dos citas de un artículo de 1983, Computer Intensive Methods in Statistics, de Efron y Diaconis, por dos motivos: su valor intrínseco y que consideren leer el resto, particularmente el principio y el final. La primera es (con mi traducción): […] el ordenador está cambiando la teoría de la estadística. Arriba hemos examinado nuevas teorías que han surgido a causa del ordenador. Otro cambio evidente es de los conjuntos de datos enormes que están disponibles a causa de la memoria de los ordenadores.

Agrupación de grafos por topología

Anuncio algo que no he conseguido hacer: agrupar grafos por topología. Pero no me he quedado lejos. Y espero que si alguien tiene alguna idea al respecto, nos lo haga saber al resto en la coda. Contexto (disfrazado). Hay usuarios que tienen correos electrónicos. La relación esperada es de uno a uno. Pero la realidad es, como siempre, mucho más compleja: hay usuarios que tienen varios correos y correos compartidos por varios usuarios.

Hoy he echado de menos Scala

Hoy he escrito last.date <- max(Filter(function(x) format(x, "%m") == "03", all.filled.data$Date)) y he echado mucho de menos Scala. Más sobre Scala: Si yo fuera rey, todos los niños aprenderían Scala. Al tipo que inventó Scala le gustan tanto o más los oneliners que a mí. Todavía me llevo mal con el compilador. La gente viene a Suiza y aprende el alemán malhablado de aquí; yo, ya véis, Scala. Soy así de sociable.

Imágenes y magia

No sé si imagen y magia comparten la misma raíz. Lo que me consta es que la gente que procesa imágenes hace algo que me parece casi mágico. De mayor quiero ser como ellos. Traigo aquí un ejemplo sobre técnicas para completar imágenes: El artículo completo, Scene Completion Using Millions of Photographs, y mucho material auxiliar puede revisarse aquí.

Grid, Scala y arbolitos fractales

Inspirado por los arbolitos que he visto esta mañana en mi semivuelta al lago de Zúrich, las cosas que estoy leyendo últimamente sobre el paquete grid de R (p.e., grid graphics, de Murrell) mi curso de scala y este enlace me he decidido a reescribirlo como Dios manda (y no como de primeras se le ocurriría a un neoingeniero al que solo le han enseñado MatLab y que, por lo tanto, tiene vetado el acceso a cualquier tipo de empresa tecnológica puntera).

Todo el mundo habla de cadenas de Markov

Todo el mundo habla últimamente de cadenas de Markov. ¿No os habéis dado cuenta? ¿O seré yo el que saca a relucir el asunto venga o no al caso? Sea que se haya puesto de moda o que esté mi misma obsesión por el asunto sesgando mi impresión sobre sobre (me encanta escribir dos preposiciones seguidas) lo que la gente habla, es el caso que el otro día me comprometí a escribir sobre

¿Cinco años y salen sin programar?

Sí, hay gente que pasa cinco años en una de esas instituciones encopetadas que son las universidades y sale de ellas sin saber programar. Aquí va un ejemplo. Es un fragmento de un currículo que me ha llegado recientemente. El tipo es economista, graduado en uno de los departamentos de la materia más reconocidos de Madrid. Dice así: Eso es todo lo que el tipo reconoce saber sobre algo parecido a la programación.

Colusión de anunciantes en perjuicio de navegantes

O algo así. Aunque alguno puede pensar que no es en su perjuicio sino en su beneficio. A saber. Solo que con collusion (un plugin para el navegador) uno puede construir gráficos tales como que significa lo que su leyenda dice y que aquí traduzco brevemente. Uno instala en plugin y comienza a navegar por internet. Al hacerlo, collusion detecta esos sitios con los que las páginas que uno visita comparte información a través de galletitas y similares.

El lenguaje de Wolfram (según Wolfram)

En el siguiente vídeo Wolfram habla del lenguaje de Wolfram. Siento repetirme, pero quiero dejar claro que puede haber un sesgo. Porque como no lo haya, el Sr. Wolfram me va a tener como admirador (y puede que hasta como cliente). Mirad lo que cuenta: ¿Es o no casi increíble?