Sentido de la proporción
Es el segundo de los síntomas de naïveté económica discutidos aquí. Que, por supuesto, no se circunscribe a discusiones de naturaleza económica. Recomendadísimo.
Es el segundo de los síntomas de naïveté económica discutidos aquí. Que, por supuesto, no se circunscribe a discusiones de naturaleza económica. Recomendadísimo.
A raíz de mi entrada del otro día he tenido una serie de intercambios de ideas. Que han sido infructuosos porque no han dejado medianamente asentadas las respuestas a una serie de preguntas relevantes. Primero, contexto: tenemos un algoritmo que decide sobre personas (p.e., si se les concede hipotecas) usando las fuentes de información habitual. El algoritmo ha sido construido con un único objetivo: ser lo más eficiente (y cometer el mínimo número de errores) posible. Usa además datos históricos reales. Lo habitual. ...
Abundo sobre lo de ayer. Una empresa clasifica a sus clientes y los asigna a grupos: malotes, estrella, psepsé, etc. Examina las características de los clientes estrella y entonces reorienta su política comercial en la siguiente dirección: Tratemos de que nuestros clientes infraóptimos asuman formalmente las características formales de aquellos que más nos gustan. En gran medida, según lo discutido ayer, el principal logro de ese tipo de políticas es la de debilitar el vínculo entre esas características identificadas por los modelos y la rentabilidad de los clientes. ...
Como me da vergüenza que una búsqueda de Goodhart en mi blog no dé resultados, allá voy. Lo de Goodhart, independientemente de lo que os hayan contado, tiene que ver con es decir, un gráfico causal hiperbásico. Si la variable de interés y es difícil de medir, resulta tentador prestar atención a la variable observable x y usarla como proxy. Todo bien. Pero también puede interesar operar sobre y y a cierta gente le puede sobrevenir la ocurrencia de operar sobre x con la esperanza de que eso influya sobre y. ...
Secuencias como pueden crearse con redes neuronales recurrentes como las que se describen en Generating Sequences With Recurrent Neural Networks.
Hace seis años escribí esto. Hoy actualizo aquella entrada para crear Y, por supuesto, el código (que he tenido que reescribir en gran medida): library(xml2) library(reshape2) library(plyr) # descarga y manipulación de datos dia_votacion <- function(n.votacion){ dir.create("tmp") url <- paste("https://app.congreso.es/votacionesWeb/OpenData?sesion=", n.votacion, "&completa;=1&legislatura;=12", sep = "") download.file( url, destfile = "./tmp/votos.zip") try(unzip("./tmp/votos.zip", exdir = "./tmp"), TRUE) ficheros <- dir("./tmp", pattern = ".*xml", full.names = T) if (length(ficheros) == 0) return(NULL) res <- lapply(ficheros, function(fichero){ print(fichero) datos <- as_list(read_xml(fichero)) sesion <- datos$Resultado$Informacion$Sesion numero <- datos$Resultado$Informacion$NumeroVotacion try(datos <- ldply(datos$Resultado$Votaciones, unlist), TRUE) if (class(datos) == "try-error") return(NULL) if (class(datos) != "data.frame") return(NULL) if(nrow(datos) == 0) return(NULL) datos$sesion <- sesion datos$numero <- numero datos }) unlink("./tmp", recursive = T) # borra el directorio temporal res } tmp <- lapply(1:156, dia_votacion) datos <- tmp[!sapply(tmp, is.null)] datos <- lapply(datos, function(x) do.call(rbind, x)) datos <- do.call(rbind, datos) datos$numero <- as.numeric(unlist(datos$numero)) datos$sesion <- as.numeric(unlist(datos$sesion)) datos$asunto <- as.character(1000000 + 1000 * datos$sesion + datos$numero) datos$ind <- 0 datos$ind[datos$Voto == "No"] <- -1 datos$ind[datos$Voto == "Sí"] <- 1 tmp <- dcast(datos, asunto ~ Diputado, value.var = "ind", fill = 0) matriz_votos <- as.matrix(tmp[, -1]) rownames(matriz_votos) <- NULL colnames(matriz_votos) <- NULL heatmap(matriz_votos, xlab = "Diputados", ylab = "Asuntos", scale = "none") No sé si alguien querrá sacarle más punta a la no historia de hoy.
Generalmente, cuando construyes uno de esos modelos para clasificar gente entre merecedores de una hipoteca o no; de un descuento o no; de… vamos, lo que hacen cientos de científicos de datos a diario, se utilizan dos tipos de fuentes de datos: individuales y grupales. La información grupal es la que se atribuye a un individuo por el hecho de pertenecer a un sexo, a un grupo de edad, a un código postal, etc. Típicamente tiene una estructura seccional (invariante en el tiempo). ...
El artículo Endogenous Technological Change de Paul Romer (nóbel de economia de este año) ofrece algunas pistas sobre la relación entre investigación (o I+D o como quiera llamarse) y desarrollo económico. En él se lee (con mi subrayado): Rivalry and excludability are closely linked because most rival goods are excludable. (A parking space in a shopping center parking lot is an example of a good that is effectively nonexcludable because the cost of enforcing excludability is too high relative to the value of the good.) The interesting case for growth theory is the set of goods that are nonrival yet excludable. The third premise cited in the Introduction implies that technology is a nonrival input. The second premise implies that technological change takes place because of the actions of self-interested individuals, so improvements in the technology must confer benefits that are at least partially excludable. The first premise therefore implies that growth is driven fundamentally by the accumulation of a partially excludable, nonrival input. ...
Son paquetes que he marcado como potencialmente relevantes pero que aún no he revisado como debiera. Tal vez alguien tenga algo más que decir sobre ellos. Tiene los comentarios, por supuesto, abiertos. longRPart2: Particionamiento recursivo para modelos longitudinales. Extiende ctree y, por supuesto, mob del paquete party a datos de tipo longitudinal. radiant: Más que un paquete, es un conjunto de paquetes para business analytics usando R y Shiny. Ni idea de para qué parte de ese amplio campo del business analytics puede resultar útil, pero si resulta que es precisamente el tuyo, ¡enhorabuena! survivalAnalysis: Promete una sintaxis homogénea y coherente para todo lo que tiene que ver con el análisis de la supervivencia. No sé si lo consigue o no, pero R está falto de este tipo de metapaquetes que den uniformidad a la sintaxis, muchas veces extravagante, con la que los desarrolladores de paquetes tan a menudo maltratan a sus usuarios. IPSUR: Es el paquete que acompaña al libro (libremente disponible) del que el nombre del paquete es acrónimo: Introduction to Probability and Statistics Using R.
Ayer salió publicada una entrada de blog mía en LUCA, i.e., aquí. Pero vamos, como si la hubiese escrito aquí. Nota: La ortotipografía (particularmente del título de la entrada) no fue cosa mía.