Goldcorp, Netflix, Kaggle, minería de datos y la nueva economía

Hasta hace no mucho trabajé durante unos meses en la vieja economía. Ahora, de algún modo, sigo en ella aunque en otro estilo. Hoy, sin embargo, hablaré de la nueva economía, de un nuevo estilo de hacer cosas. Llevado de un oneroso vicio mío, no hace tanto que compré cierto librito (que aún no he terminado) en cuyo primer capítulo tuve noticia del Goldcorp Challenge. En resumen: Goldcorp es una empresa minera que para el 2000 explotaba unas minas de oro en declive. Entonces, su director decidió nadar contra corriente: hizo públicos los datos recopilados por sus equipos de geólogos, que eran incapaces de encontrar depósitos nuevos de oro en la zona, y ofreció premios en metálico (más de medio millón de dólares) a quien, explotándolos, lograse indicios de nuevos filones. ...

22 de abril de 2010 · Carlos J. Gil Bellosta

Para que copien, peguen y disfruten: addenda

Ayer dejé publicadas unas cuantas líneas de R y la promesa de contar de qué iba la cosa. Adelantando acontecimientos, he recibido comentarios públicos y privados al respecto que en esta entrada trataré de contestar. El código era, una vez mínimamente desofuscado (no quería dar demasiadas pistas): vertice.x <- c(0,1,2) # 1 vertice.y <- c(0,1,0) # 2 muestra <- sample( 1:3, 100000, replace = T ) # 3 iter <- function( ini, v ){ # 4 out <- rep( ini, length(v) ) # 5 for( i in 2:length(v) ) out[i] <- ( out[i-1] + v[i] ) / 2 # 6 out } plot( iter( runif(1), v.x[ muestra ] ), iter( runif(1), v.y[ muestra ] ), pch = "." ) He aquí lo que hace: Asigna a una variable las coordenadas x de un triángulo. Asigna a otra variable las coordenadas y del triángulo. Selecciona una muestra aleatoria de tamaño 100k (con reemplazo, obviamente) de los vértices de dicho triángulo. Crea una función, iter, que calcula iterativamente una sucesión de puntos. La función genera una sucesión de puntos comenzando por uno al azar. Por eficiencia, es mejor asignar espacio previamente. En este caso es un vector de longitud igual al de la muestra de puntos. El bucle calcula de hecho la sucesión de puntos. Cada uno de ellos es el punto medio entre el anterior y el vértice (elegido al azar, recordemos) correspondiente. Por lo tanto, la sucesión de puntos trata de acercarse a los vértices del triángulo en una especie de caminata aleatoria sin en realidad llegar a poder alcanzar jamás ninguno de ellos. (Supongo que este algoritmo le habría quitado el sueño malamente al pobre Zenón). Finalmente, se representan los puntos gráficamente en el plano. El resultado, como todo atento lector de las páginas 42 a 45 de este libro debería haber reconocido, es el triángulo de Sierpinsky (como dice el autor del libro, el resultado es dicho triángulo querámoslo o no). ...

21 de abril de 2010 · Carlos J. Gil Bellosta

Para que copien, peguen y disfruten

El otro día hablé de una señora que había hecho algunos comentarios poco avisados sobre R. A las alegaciones de que el código de R que publicó en su página no es siquiera código de R respondió diciendo que lo había copiado “de internet” (¡cuánto de pernicioso hay en esas páginas por donde uno navega sin temor de Dios!). Para incrementar la probabilidad de que, cuando esto vuelva a ocurrir, el código pegado de internet sea más bonito que el arriba mencionado, dejo acá este (e invito a mis lectores a ejecutarlo): ...

21 de abril de 2010 · Carlos J. Gil Bellosta

Los "mejores" paquetes de R (I): la red social de los participantes en r-help

Hace no mucho leí un articulillo de SAS sobre el impacto de ciertas marcas en determinadas redes sociales. Como este tema, así como sus posibles aplicaciones, siempre me ha intrigado, llevado de la curiosidad y del aburrimiento, decidí realizar un estudio análogo. El artículo de SAS utiliza como materia prima resúmenes de publicaciones científicas que tratan de determinados medicamentos. A los autores les interesa conocer de qué marca de medicamentos escribe cada autor ponderando a éstos últimos en función de su impacto. El impacto lo miden a través de su peso en la red de colaboraciones científicas: tiene alto impacto un autor que ha escrito muchos artículos en colaboración con otros autores que también han escrito muchos artículos. ...

18 de abril de 2010 · Carlos J. Gil Bellosta

Los mayas y la crisis

Tengo que pedir disculpas a mis lectores por el título de la entrada: reconozco que tiene un sí es no es de desesperado intento por captar tráfico a costa de los amigos de lo escatológico, tal vez interesados en averiguar qué nos sucederá a todos en el 2012. En realidad, el vínculo que establezco entre los mayas y la crisis actual tiene que ver con una relativamente reciente (re)visita mía a uno de esos museos en los que uno, a veces, ríe y, otras, llora como por dentro. En él me topé con una versión facsímil (¿por qué en los museos siempre debería haber originales?) de lo siguiente: ...

14 de abril de 2010 · Carlos J. Gil Bellosta

La opinión sobre R de una pobre señora

Me llegan noticias de una pobre señora que, se conoce, tiene un blog en el que habla de cosas que, da la impresión, le trascienden. Dice lo siguiente: Contrary to what some people seem to think, R is definitely not the next big thing, either. I am always surprised when people ask me why I think that, because to my mind it is obvious. Vamos, que no cree en R y que, además, esa idea suya le parece la más obvia del mundo. Para apoyar su argumento, muestra el siguiente ejemplo de código en R, supuestamente muy feo (más, de hecho, de lo que se imagina): ...

14 de abril de 2010 · Carlos J. Gil Bellosta

Google public data explorer

Participo últimamente en un proyecto dentro de un banco español bastante grande (sobre el que no abundaré ahora), que tiene como objetivo diseminar información financiera y comercial del mismo para los responsables de su dirección y gestión. La información de partida yace (nunca mejor dicho) en vetustos prodigios de la técnica de los años setenta y nuestro papel consiste en desenterrarla con herramientas y procedimientos más a la altura de los tiempos. ...

11 de abril de 2010 · Carlos J. Gil Bellosta

El censo del rey David y el castigo de Yahvé

A la vuelta de la Semana Santa, voy a escribir sobre una historia que leí en un librito muy recomendable de I.B. Cohen: El triunfo de los números. Imagino que mis lectores, más eruditos que yo, seguramente la conocerán de antiguo. La Biblia está plagada de números e incluso define en cierto punto el valor de pi como tres. También trae noticia de algunos censos realizados en el antiguo Israel/Judea. El más famoso de todos, supongo, es el que condujo a José y María a Belén. Pero el que comento en esta entrada no deja de tener su interés. ...

7 de abril de 2010 · Carlos J. Gil Bellosta

¿Puedo cambiar mi código retroactivamente?

La verdad, me gustaría, me gustaría volver atrás y modificar algunas docenas de líneas de código en R que malescribí como un diletante por no estar al tanto de una función de R cuya verdadera utilidad descubrí recientemente (gracias le sean dadas, de nuevo, a Jorge Iván Vélez). La verdad, no tengo excusa. Incluso se habló de ella en nuestro blog hermano. Y es que nunca me había percatado de la potencia de la función mapply. He aquí el problema: se tienen dos listas de la misma longitud y se quieren transformar los objetos de la primera en función de datos extraídos de los objetos correspondientes de la segunda. En los tiempos oscuros que duraron hasta anteayer, me veía abocado a utilizar un bucle que llevase la contabilidad del índice para poder recorrer ambas listas simultáneamente: ...

29 de marzo de 2010 · Carlos J. Gil Bellosta

Proyectos de R en el Google Summer of Code 2010

El Google Summer of Code es una iniciativa de Google por la cual la empresa otorga becas a estudiantes para que estos colaboren en determinados proyectos de código abierto. Y las becas no son moco de pavo: cada estudiante aceptado recibiría 5000 dólares de Google. En estas colaboraciones, los estudiantes participan bajo la tutela de un mentor. Se buscan, por tanto, mentores con proyectos y estudiantes que quieran participar en alguno de ellos. ...

28 de marzo de 2010 · Carlos J. Gil Bellosta