¿Siete lenguajes de programación emergentes?

Hace un par de días apareció un artículo en InfoWorld en el que se enumeraban siete lenguajes de programación emergentes. Parece que por emergentes ha de entenderse cada vez más extendidos en la empresa. Como R hacía parte del rol, comencé alegrándome. Después me surgieron dos elementos de sospecha. Véase la lista de los siete lenguajes seleccionados: Python, un viejo conocido. Ruby Matlab JavaScript, que está gozando de una segunda primavera gracias a AJAX y demás R, ¡cómo no! Erlang (vale la pena echarle un vistazo: tiene cosas la mar de interesantes) Cobol (¡ufa!) Extensiones CUDA Los elementos de sospecha son dos (ni tres ni siete): ...

27 de octubre de 2010 · Carlos J. Gil Bellosta

A vueltas con los fractales

Si bien no hace mucho publicaba una entrada sobre el triángulo de Sierpinsky, mi tocayo Carlos Ortega (y ahora gentil colaborador) nos ha proporcionado un enlace en este blog a un pedazo de código que bien vale la pena replicar aquí para el solaz (y tal vez, incluso, provecho) de los lectores de estas páginas. Es: library(fields) # for tim.colors library(caTools) # for write.gif m = 400 # grid size C <- complex( real=rep(seq(-1.8,0.6, length.out=m), each=m ), imag=rep(seq(-1.2,1.2, length.out=m), m ) ) C <- matrix(C,m,m) Z <- 0 X <- array(0, c(m,m,20)) for (k in 1:20) { Z <- Z^2+C X[,,k] <- exp(-abs(Z)) } image(X[,,k], col=tim.colors(256)) write.gif(X, "Mandelbrot.gif", col=tim.colors(256), delay=100) (extraído de aquí). ...

26 de octubre de 2010 · Carlos J. Gil Bellosta

Una solución al problema de la separación perfecta con regresiones logísticas

Cuando el otro día planteé al mis lectores el problema de cómo representar de manera efectiva un conjunto de datos pequeños, no lo hice de manera enteramente ociosa. Eran datos reales de un cliente que tropezó con el llamado problema de la separación perfecta al intentar aplicar una regresión logística. Veamos de nuevo los datos: En la gráfica cada punto representa un individuo (posiblemente una persona). Los grupos los distinguen en dos clases (posiblemente, enfermos y sanos). La variable en el eje de la x mide el nivel de cierta proteína (supongo que en las células de algún tipo de tejido). Si se intenta realizar una regresión logística sobre este conjunto de datos sucede una catástrofe: el algoritmo diverge, aparecen mensajes de error en la pantalla, etc. ¡Es el problema de la separación perfecta! ...

25 de octubre de 2010 · Carlos J. Gil Bellosta

Tutorial: instalación de la extensión de R para RapidMiner

Por popular demanda, voy a explorar cómo de dificultoso es instalar el puente entre R y RapidMiner en Windows y a dejar escrito cómo se hace. Lo instalé hace días en Linux (Ubuntu) sin mayor problema. Pero hay quien parece que haberlos tenido en la ubicua plataforma. No sé mucho de Windows y las diferentes versiones y configuraciones que pueda tener.Solo sé que he probado los pasos de este tutorial sobre un Windows 7 Profesional (creo) de 32 bits. ...

22 de octubre de 2010 · Carlos J. Gil Bellosta

Matlab es más rápido que R... ¿y?

No sé si alguna vez en la vida he visto una copia legal de Matlab. Creo que no. Ni forzando la memoria consigo recordar haber conocido a alguien que haya pagado los 2000 euros que cuesta una licencia comercial en España. Eso sí, he conocido a mucha gente a la que le gusta mucho. Y que habla maravillas de él, etc. En algún sitio lo habrán probado, presumo. Los aficionados a Matlab lo son también a comentar lo rápido que es. He desperdiciado largas horas en aburridoras conversaciones acerca de lo veloz que es Matlab haciendo nosequé operaciones (que no realizo ni directa ni indirectamente casi nunca). Y de paso, a comentar lo bien que se compara contra R (¿por chinchar?): alguna vez he tenido que asistir con desigual grado de indiferencia a inopinadas e improvisadas sesiones de programación en las que construir comparativas que demuestren cuánto más gallardamente invierte unas matrices Matlab que R. ...

6 de octubre de 2010 · Carlos J. Gil Bellosta

Proyectos de R en el Google Summer of Code 2010 (II)

Hace ya unos meses hablé de cómo había unos cuantos proyectos relacionados con R en el Google Summer of Code 2010. Recientemente se ha publicado un pequeño resumen de los logros alcanzados: De las quince propuestas originales, arrancaron cinco. De las cinco, cuatro llegaron a buen término. Lamentablemente, el —tal vez— más interesante de ellos, la implementación de un interfaz de R análogo a DBI para bases de datos no relacionales (NoSQL), acabó en nada. Me consta que este blog lo lee mucha gente relacionada con la universidad. ¿Será que el año que viene tendremos alguna propuesta de España, Colombia, Argentina…?

29 de septiembre de 2010 · Carlos J. Gil Bellosta

Rutinas de C en R

[Nota: esta entrada está totalmente desactualizada y la mantengo en blog por una mezcla de sentimentalismo y fidelidad a la “memoria histórica”; el interesado en cómo interconectar R y C (o C++) hoy hará bien en buscar en otra parte.] Esta entrada que ahora hago es un pequeño tutorial que publiqué en mi primera página de internet a principios de siglo, cuando todavía usaba Windows regularmente. Es posible que gran parte de lo que en ella cuente esté ya mandado a recoger. No obstante, tampoco hace tanto, eché mano de lo que en ella había dejado escrito para ver cómo migrar a Windows algo que había hecho en Linux y… todavía funcionó. ...

26 de septiembre de 2010 · Carlos J. Gil Bellosta

Un grupo de usuarios de R en España... ¿cuándo?

Hace poco recibí noticia de la creación de un grupo de usuarios de R en Brisbane, que no deja de ser una ciudad chiquita en un país poblacionalmente chiquito. ¡Y es ya el cuarto en Australia! Miro también el siguiente gráfico y me da algo de grima: ¡No hay ni unsolo cerca de Madrid (que es la ubicación que a mí y ahora más me compete)! Así que si alguno de mis lectores está interesado en el asunto, podemos ir urdiendo cómo hacer para colocarle un pinchico rojo a ese mapa justo en Sol. ...

24 de septiembre de 2010 · Carlos J. Gil Bellosta

useR! 2011

La próxima reunión anual de usuarios de R tendrá lugar del 16 al 18 de agosto de 2011 en la Universidad de Warwick, Inglaterra. Los conferenciantes invitados de este año van a ser Adrian Bowman, Lee Edlefsen, Ulrike Grömping, Wolfgang Huber, Brian Ripley, Jonathan Rougier, Simon Urbanek y Brandon Whitcher. Los usuarios de R están invitados a preparar charlas y presentar pósters ilustrando el uso de R. ¿Cuándo tocará en España? (Ramón Díaz Uriarte, que forma parte del comité organizador, me ha confirmado en comunicación personal que tardará, que hay una larga lista de candidatos a alojarlas y que vamos a tener que esperar todavía, me temo).

17 de septiembre de 2010 · Carlos J. Gil Bellosta

Representando gráficamente conjuntos de datos pequeños

Últimamente me están llegando conjuntos de datos para analizar con muy pocos registros. He aquí un subconjunto de uno de ellos (de hoy y debidamente anonimizado): nivel.proteina <- c( 11.56, 10.43, 11.00, 10.92, 10.08, 9.98, 10.35, 9.55, 9.19, 7.00, 6.72, 6.43, 7.43, 7.26, 6.67, 7.49, 8.03, 8.17, 6.79, 7.68, 7.01, 7.51, 6.90, 7.27, 7.56, 8.61, 8.16, 7.12 ) grupo <- c(0,0,0,0,0,0,0,0,0, 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1) datos <- data.frame( nivel.proteina, grupo ) Le he estado dando vueltas a la manera de representar gráficamente este tipo de conjunto de datos de la manera en que deben hacerse estas cosas: que con un mero golpe de vista pueda hacerse uno con ellos. ...

16 de septiembre de 2010 · Carlos J. Gil Bellosta