Outra simulação “achatar a curva COVID-19” … em R

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


[Esteartigofoipublicadopelaprimeiravezem[Thisarticlewasfirstpublishedon Há muito tempo…, e gentilmente contribuiu para os R-blogueiros]. (Você pode relatar um problema sobre o conteúdo desta página aqui)


Deseja compartilhar seu conteúdo com R-blogueiros? clique aqui se você tiver um blog ou aqui se não tiver.

Olá,

Este é o melhor meme que eu encontrei durante esses dias …

Bem, aqui está a minha contribuição “MAS”. Algumas semanas atrás, o Washington Post publicou essas simulações sobre como o “distanciamento social” poderia ajudar a “nivelar a curva” das infecções por COVID-19. Eu me apaixonei por essas simulações por sua simplicidade e poder explicativo. De fato, você pode usar os princípios bastante semelhantes para simular o comportamento de caça ao predador e outros padrões de movimento. Eu escrevi um código R para ter uma versão minúscula deles.

 library(raster)  
library(dismo)

r r[]

steps n

locations

pp cell infected pob ratio pob_inf

for (j in 1:steps){
print(j)
locations[j,]

for(i in 1:n){

cell[i]

}

new_inf infected ratio[j,2] pob_inf[[j]]

}

locations2

cell2 infected2 pob2 ratio2 pob_inf2

for (j in 1:steps){
print(j)
locations2[j,]

for(i in 1:25){

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br

cell2[i]

}

new_inf2 infected2 ratio2[j,2] pob_inf2[[j]]

}

Vamos fazer alguns gráficos para reuni-los em um GIF e visualizar melhor os resultados …

 num 

for (p in 1:125){
id png(paste("corona_",id,".png", sep=""), width=780, height=800, units="px", pointsize = 15)
layout(matrix(c(1,1,2,3),2,2,byrow = TRUE))
plot(ratio[1:num[p],],pch=19, xlim = c(0,500), ylim = c(0,100), ylab = "nº of infected",
xlab = "time", col = "red", cex.axis = 1.4, cex.lab = 1.4, main = "Infected curves", cex.main = 2)
points(ratio2[1:num[p],],pch=19,col="blue")
legend("topright", legend = c("free movement", "restricted movement"),lwd = c(4,4), col = c("red","blue"), cex = 1.5 )
plot(r, col = "white", legend = FALSE, axes = FALSE, main = "free movement", cex.main = 1.8)
points(xyFromCell(r,as.numeric(locations[num[p],])), cex = 1.2, col = "grey40", pch = 18)
points(xyFromCell(r,as.numeric(locations[num[p],]))[pob_inf[[num[p]]],], pch = 18, col = "red", cex = 1.4)
plot(r, col = "white", legend = FALSE, axes = FALSE, main = "restricted movement", cex.main = 1.8)
points(xyFromCell(r,as.numeric(locations2[num[p],])), cex = 1.2, col = "grey40", pch = 18)
points(xyFromCell(r,as.numeric(locations2[num[p],]))[pob_inf2[[num[p]]],], pch = 18, col = "blue", cex = 1.4)

dev.off()
}

Feito!

Fique seguro!



Se você chegou até aqui, por que não inscreva-se para atualizações do site? Escolha seu sabor: e-mail, Twitter, RSS ou facebook …



cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br
Leia Também  Usando R: gráfico simples de Gantt com ggplot2