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

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

¿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

R en "The Economist"

El semanario The Economist ha publicado un suplemento especial sobre nuevos retos y tendencias en el procesamiento de cantidades ingentes de información. Aparte de multiplicar por 10 los informes que aparecen publicados periódicamente, en este se menciona explícitamente que un free programming language called R lets companies examine and present big data sets. También habla de Hadoop y otras técnicas y herramientas novedosas de las que sin duda voy a ir hablando en estas páginas. Aunque solo sea que me embarco en un proyecto destinado a manipular grandes volúmenes de datos con tecnologías del siglo XX.

1 de marzo de 2010 · Carlos J. Gil Bellosta

Edición especial del Journal of Statistical Software sobre GUIs para R

Se ha anunciado recientemente una edición especial del Journal of Statistical Software acerca de interfaces gráficas para R. Los editores son Pedro Valero Mora y Rubén Ledesma. Me tomo la libertad de traducir el anuncio para este blog: Desde la publicación del artículo original de Gentleman and Ihaka, R ha sido adoptado por un porcentaje creciente de estadísticos profesionales en la universidad y fuera de ella, pero su difusión entre los usuarios nuevos u ocasionales de la estadística no ha progresado al mismo ritmo. Una de las razones más esgrimidas para explicar su escaso impacto es la de la falta de una interfaz gráfica. Sin embargo, en los últimos años, la situación ha ido cambiando y han aparecido diversos proyectos que han construido distintos GUIs para R de diverso grado de sofisticación. Esto ha constituido una nueva fuente de confusión para el usuario: ¿cuál usar? Se ha pasado de una situación en la que apenas existían a otra en la que hay demasiados. ...

28 de febrero de 2010 · Carlos J. Gil Bellosta

Creando paquetes con R: r-forge

Hace poco no asistí a una conferencia del profesor Campo Elías Pardo en la Universidad Nacional de Colombia sobre la creación de paquetes de R. Me pesó no poder asistir porque sospeché primero y corroboré después que se había obviado en ella una herramienta muy útil para la creación de paquetes con R: la forja oficial. La conferencia trataba esencialmente sobre cómo crear paquetes bajo Windows. Windows es un sistema operativo del que sé poco y siempre me han parecido excesivamente arcanas las liturgias y herramientas necesarias para compilar los paquetes. Especialmente cuando uno cuenta con Linux. Pero ésa es otra historia. ...

27 de febrero de 2010 · Carlos J. Gil Bellosta

febRero

Nada he publicado durante el mes de febrero en el blog. Pareciese que no estaba en el mundo. Estaba, sí, pero en otra parte, muy hermosa, de él. Y de parte de mis hechos da cuenta el siguiente afiche: Como en él indica, en el Departamento de Estadística de la Universidad Nacional de Medellín tuvieron la gentileza de invitarme a dar de nuevo la conferencia que impartí en las I Jornadas de Usuarios de R en España. Tuve ocasión de conocer al (y tomarme un tintico con) legendario Juan Carlos Correa, del que supe más tarde que me calificó de gomoso de R. ...

26 de febrero de 2010 · Carlos J. Gil Bellosta