IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Professeur Leger (l. g...)

coronavirus -- la fin du confinement, un pari fou ?

Noter ce billet
par , 10/05/2020 à 20h57 (932 Affichages)
Coronavirus.

A la veille du dé-confinement, l'épidémie semble reprendre, par exemple chez nos voisins allemands.

Ci-joint, des graphiques pour l'Essonne, établis à partir des données fournies sur data.gouv.fr.

Le fichier est mis à jour tous les jours. L'étude porte sur les passages des médecins en visite pour le corona virus.
Les programmes fournissent des graphiques pour l'Essonne/91 :
- les visites par age pour une date donnée
- l'historique du nombre de visites dans le temps avec la courbe d'ajustement de la période de confinement
- le graphe des écarts entre la courbe et les visites. Si on sort des frontières pointillées, on peut considérer que le déconfinement a provoqué un changement d'orientation de la courbe des visites. Il est probable que des mesures de retour à une situation moins libre devront être prises.

Ci-après le code R pour mettre à jour votre étude selon le département et le jour. C'est ce code qui a produit les graphes d'analyse.

Code R : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
# note :
# Avec votre navigateur, allez à l’adresse
# <a href="https://www.data.gouv.fr/fr/datasets/donnees-des-urgences-hospitalieres-et-de-sos-medecins-relatives-a-lepidemie-de-covid-19/" target="_blank">https://www.data.gouv.fr/fr/datasets...e-de-covid-19/</a>
 
# Et téléchargez le fichier 
# sursaud-covid19-quotidien-2020-05-09-19h00-departement.csv
# la date du fichier téléchargé change de jour en jour. Ainsi il se peut que le fichier proposé soit*:
# sursaud-covid19-quotidien-2020-05-30-19h00-departement.csv
# si vous vous situez à proximité du 30 mai.
 
# ce sera ci-apres le fichier_source.csv
# que vous placerez dans votre répertoire de travail R
 
# telechargez aussi le fichier des tranches d'age et celui des meta données
 
 
 
fichier_traite<-"sursaud-covid19-quotidien-2020-05-09-19h00-departement.csv";
 
donnees_corona<-read.csv(fichier_traite);
donnees_corona<-read.csv(fichier_traite
   ,colClasses=c("date_de_passage"="character"));
 
ls(donnees_corona);
typeof(donnees_corona$dateRep);
str(donnees_corona);
 
 
donnees_corona$dateRep2<-as.factor(as.Date(donnees_corona$date_de_passage,"%Y-%m-%d"));
 
# affichage des donnees pour une date donnée
donnees_une_date<-donnees_corona[which(donnees_corona$date_de_passage=="2020-04-06"),]
# seulement le 91
donnees_une_date_dep<-donnees_une_date[which(donnees_une_date$dep=="91"),]
 
 
pie.donnees_age <- donnees_une_date_dep$nbre_pass_corona[which(donnees_une_date_dep$sursaud_cl_age_corona!="0")];
names(pie.donnees_age)<-donnees_une_date_dep$sursaud_cl_age_corona [which(donnees_une_date_dep$sursaud_cl_age_corona!="0")];
pie(pie.donnees_age, col = gray(seq(0.4, 1.0, length = 6)));
title(main="Visites pour corona par age du patient",sub="departement 91, le 2020-04-06");
 
 
ages_corona<-read.csv("code-tranches-dage.csv",sep=";");
names(ages_corona) <- c("code", "label_age");
donnees_2020_tab<-merge(ages_corona,donnees_une_date_dep,by.x="code",by.y="sursaud_cl_age_corona");
 
pie.donnees_age <- donnees_2020_tab$nbre_pass_corona[which(donnees_2020_tab$code!="0")];
libelles<-donnees_2020_tab$label_age[which(donnees_2020_tab$code!="0")];
names(pie.donnees_age)<-libelles;
pie(pie.donnees_age, col = gray(seq(0.4, 1.0, length = 6)));
title(main="Visites pour corona par age du patient",sub="departement 91, le 06/04/2020");
 
jpeg(file = "pie_donne_age.jpg",width=480,height=480,bg="white")
 
pie.donnees_age <- donnees_2020_tab$nbre_pass_corona[which(donnees_2020_tab$code!="0")];
libelles<-donnees_2020_tab$label_age[which(donnees_2020_tab$code!="0")];
names(pie.donnees_age)<-libelles;
pie(pie.donnees_age, col = gray(seq(0.4, 1.0, length = 6)));
title(main="Visites pour corona par age du patient",sub="departement 91, le 06/04/2020");
 
dev.off()
 
 
gl_indice_max<- function(X) {
j=length(X)
gl_max<-max(X)
for(i in 1:j)
{if (X[i]==gl_max) gl_i<-i;}
gl_i
};
 
gl_retarde <-function(X) {
# X colonne, 
j=length(X)
gl_r<-X[0]
gl_r[1]=0
for(i in 2:j)
{gl_r[i]<-X[i-1]}
gl_r
};
 
gl_lisser <-function(X,coeff) {
# X colonne, 
j=length(X)
gl_r<-X[0]
gl_r[1]=0
for(i in 2:j)
{gl_r[i]<-gl_r[i-1]*(1-coeff)+X[i]*coeff}
gl_r
};
 
 
 
# graphe historique
donnees91<-donnees_corona[which(donnees_corona$dep==91),];
donnees91<-donnees91[which(donnees91$sursaud_cl_age_corona=="0"),];
 
 
 
lines(gl_lisser(donnees91$nbre_pass_corona,0.7),col="blue")
lines(donnees91$nbre_pass_corona,col="red")
plot(donnees91$nbre_pass_corona,col="green",type="h",xlab="temps",ylab="nb passages")
lines(gl_lisser(donnees91$nbre_pass_corona,0.7),col="blue")
lines(donnees91$nbre_pass_corona,col="red")
lines(donnees91$nbre_pass_corona,col="green")
 
 
imax=length(donnees91$nbre_pass_corona)
y<-donnees91$nbre_pass_corona[34:imax]
x<-gl_lisser(gl_retarde(donnees91$nbre_pass_corona),0.9)[34:imax]
 
 
T=seq(from=34,to=34+length(y)-1,by=1)
regetud<-lm(log(y)~T)
 
summary(regetud)
 
coef(regetud)
c1<-coef(regetud)[1]
c2<-coef(regetud)[2]
 
plot.new()
T0=seq(from=1,to=length(donnees91$nbre_pass_corona),by=1)
plot(T0,donnees91$nbre_pass_corona,col="green",type="l")
curve(exp(c1)*exp(c2)**x,from=34,to=length(donnees91$nbre_pass_corona),col="violet",add=TRUE,lwd=3)
 
jpeg(file = "graphe_corona_t.jpg",width=480,height=480,bg="white")
 
plot.new()
T0=seq(from=1,to=length(donnees91$nbre_pass_corona),by=1)
plot(T0,donnees91$nbre_pass_corona,col="green",type="l",xlab="temps en jours")
curve(exp(c1)*exp(c2)**x,from=34,to=length(donnees91$nbre_pass_corona),col="violet",add=TRUE,lwd=3)
 
dev.off();
 
 
estime<-exp(c1)*exp(c2)**T
residus<-y-estime
 
jpeg(file = "graphe_residus_t.jpg",width=480,height=480,bg="white")
frame()
plot(residus,type="l",xlab="temps")
lines(y-y,type="l",col="blue")
lines(y-y+2*sqrt(var(residus)),lty=2,type="l",col="red")
lines(y-y-2*sqrt(var(residus)),lty=2,type="l",col="red")
dev.off();
Miniatures attachées Images attachées    

Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Viadeo Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Twitter Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Google Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Facebook Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Digg Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Delicious Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog MySpace Envoyer le billet « coronavirus -- la fin du confinement, un pari fou ? » dans le blog Yahoo

Mis à jour 11/05/2020 à 18h55 par Malick (Ajout balises code)

Catégories
Programmation

Commentaires