Embalses en España: otro ejercicio inconcluso de "web scraping"
Vi el otro día que alguien había conseguido datos de la entrada en funcionamiento de las presas de EE.UU. y me picó la curiosidad: ¿se podrán conseguir también para España?
La respuesta es afirmativa.
El código para bajarse (y adecentar un poco) la base de datos es:
library(XML)
## bajada de datos
tmp <- lapply(1:47,
function(x)
readLines(paste("http://www.seprem.es/presases.php?p=",
x, sep = "")))
tmp2 <- lapply(tmp, readHTMLTable)
## limpieza de datos
res <- lapply(tmp2, function(x) x[[1]])
res <- do.call(rbind, res)
res <- res[,-c(1,7)]
res <- res[!is.na(res$V2),]
res <- res[-(1:5),]
res <- data.frame(lapply(res, as.character),
stringsAsFactors=F)
names(res) <- make.names(as.character(res[1,]))
## filtros de filas
res <- res[res$Nombre != "Nombre",]
res <- res[res$Nombre != "",]
res <- res[!grepl("Presas", res$Nombre), ]
res <- res[!grepl("DIQUE DEL", res$Nombre), ]
colnames(res) <- c("nombre", "vertiente",
"altura", "hm3", "finalizada")
res <- res[!is.na(res$vertiente),]
## texto a numérico
res$altura <- as.numeric(gsub(",", ".", res$altura))
res$hm3 <- as.numeric(gsub(",", ".", res$hm3))
res$finalizada <- as.numeric(res$finalizada)
## más filtros (se aplican a obras que no son embalses)
res <- res[!is.na(res$hm3), ]
## los embalses en construcción no tienen fecha de
## finalización
res$finalizada[is.na(res$finalizada)] <- 2015
En cuanto a qué hacer con ellos, me limitaré a mostrar la salida de