[ad_1]
[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){
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!
Relacionado
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 …
[ad_2]