scala

Metropolis-Hastings en Scala

Tengo la sensación de que un lenguaje funcional (como Scala) está particularmente bien adaptado al tipo de operaciones que exige MCMC. Juzguen Vds. Primero, genero datos en R: datos <- rnorm(500, 0.7, 1) writeLines(as.character(datos), "/tmp/datos.txt") <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-R" data-lang="R"><span style="display:flex;"><span>Son de una normal con media <span style="color:#ae81ff">0.7</span>. En el modelo que vamos a crear, suponemos <span style="color:#a6e22e">conocida </span>(e igual a <span style="color:#ae81ff">1</span>) la varianza de la normal y trataremos de estimar la media suponiéndole una distribución a priori normal estándar.

Melt y cast en Spark con scala

Trabajar con Spark usando Scala implica renunciar a ese paraíso que son las funciones melt y (d)cast de reshape2. ¿O no? import org.apache.spark.sql.types.StructField; import org.apache.spark.sql.types.StructType; import org.apache.spark.sql.types.StringType; import org.apache.spark.sql.types.DoubleType; import org.apache.spark.sql.Row; /** Create some data **/ val nrows = 20 val origDF = sc.parallelize(1.to(nrows).map(x => (x, math.pow(x,2), math.pow(x,3)))).toDF("id", "cuadrado", "cubo") /** Melt **/ val ids = Map("id" -> 0) val cols = Map("cuadrado" -> 1, "cubo" -> 2) def melt(x:Row, ids:Map[String, Int] , cols:Map[String, Int]) = { var tmp = ids.

Spam 2.0 (increíblemente bien hecho)

Recibí recientemente este correo (con los enlaces que aparecen en él; solo he eliminado el apellido de la remitente): Subject: Carlos - Scala resource Hi Carlos, I was doing some research for our students here at Udemy on people using Scala resources and when I came across your site, saw you were using the tutorial from Wikipedia. We really like that resource, and actually created our own that we think is a perfect supplement!

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.

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).