WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Estimation du temps de parcours aux soins de santé dans le district d'Ifanadiana.


par Randriamihaja Mauricianot
Ecole de management et d'innovation technologique - Master recherche en Informatique 2019
  

précédent sommaire suivant

Extinction Rebellion

6.2. Traitements

Pour obtenir les résultats, on a élaboré plusieurs scripts sous R pour les traitementsavec des méthodesstatistiques afin de résoudre le problème complexe sur le cas d'étude.Ces scripts sont présentésà partir du l'extrait des codes dans chaque sous-section.

6.2.1. Exploration des données

Pour l'exploration, on a utilisé deux modes exploratoires comme : l'analyse de variables quantitatives et l'analyse de variables qualitatives.L'analyse de variables qualitatives, pour connaitre le lien entre la vitesse et des variables catégorielles, se fait à partirde la boîte à moustache (boxplot) et l'autre à partir de la fonction plot.

L'extrait du code suivant montre l'analyse exploratoire des données collectées sur le terrain pour l'estimation du temps de parcours à pied.Dans ce code, on a crééune variable « distance originale » (distance cumulée) à partir de la distance pour avoir l'effet des vitesses par rapport à l'éloignement depuis le début du parcours afin de le catégoriser. Ensuite, on catégorise par rapport à leur type les valeurs de proportion d'occupation du sol en gardant l'une qui a la valeur la plus élevée. Enfin, on représente graphiquementles données pour toutes les variables.

# Sélectionner chaque track séparément et obtenir les positions dans la base de données où il se trouve

for (my.track in levels(track.database.model$track)){

position=which(track.database.model$track==my.track)

# Pour chaque track on va calculer la distance depuis le début du parcours

for (i in 1:length(position)){

if(i==1){track.database.model$distance.origine[position][i]=track.database.model$distance[position][i]}

else{track.database.model$distance.origine[position][i]=track.database.model$distance[position][i]+track.database.model$distance.origine[position][i-1]}

}

}

# Catégorisation de la distance originale des parcours effectuée durant les trajets

track.database.model$categorydistance <- cut(track.database.model$distance.origine, c(0, 13 , max(track.database.model$distance.origine)), include.lowest = TRUE)

# Catégorisation des valeurs proportion d'occupation du sol

sum.cat=apply(track.database.model[,c('Savane_Arboree','Foret_dense','Zone_Habitation','Riziere','Eau_de_surface')],1,sum)

hist(sum.cat) ; sum.cat.total=ifelse(sum.cat==100,1,0)

# On utilise cèle qui ont la valeur plus grande pour l'occupation du sol

main.cat=apply(track.database.model[,c('Savane_Arboree','Foret_dense','Zone_Habitation','Riziere','Eau_de_surface')], 1, function(x){which(x>50)})

ii=which(lapply(main.cat,length)==0) ; main.cat[ii]='Mixte'

track.database.model$occupation=factor(labels(unlist(main.cat))) ; levels(track.database.model$occupation)[1]='Mixte'

# Catégorisation des valeurs proportion d'occupation du sol

track.database.model$paysages.c <- cut(as.numeric(track.database.model$paysages), c(0,0.1, 50, 100), include.lowest = TRUE)

#Diviser par 15 les valeurs des pentes

track.database.model$slope <- abs(track.database.model$slope)/15

# Frequence du variable reponse

par(mfrow = c(1,3))

hist(track.database.pied$speed, col='grey', main=NULL,xlab='Vitesse des individus', ylab = "Frequence")

table(track.database.pied$speed)

boxplot(track.database.pied$speed, ylab="Vitesse", main="Médian des vitesses")

plot(ecdf(track.database.pied$speed), main="Répartition cumulée")

# variables pente par rapport à la vitesse

par(mfrow = c(1,3))

hist(track.database.pied$slope, col='grey', main=NULL,xlab='Valeurs des pentes', ylab = "Frequence")

table(track.database.pied$typeslope)

track.database.pied$typeslope=factor(track.database.pied$typeslope, levels(track.database.pied$typeslope)[c(1,2,4,3)])

boxplot(track.database.pied$speed~track.database.pied$typeslope, ylab="Vitesse des individus par type des pentes")

plot(track.database.pied$slope,track.database.pied$speed, ylab='Vitesse des individus / pente de terrain', pch=16, cex=0.5)

abline(lm(speed~slope, data=track.database.pied), col='lightblue', lwd=2)

lines(smooth.spline(track.database.pied$slope,track.database.pied$speed),col='red',lwd=2)

legend('topright',lty=1, cex = 0.8 ,col=c('lightblue','red'),c('Modèle linéaire','Modèle Non Linéaire'))

cor(track.database.pied$slope, track.database.pied$speed, use = "complete.obs")

table(track.database.pied$lpaysages.c)

boxplot(track.database.pied$speed ~ track.database.pied$paysages.c, ylab='Vitesse des individus', xlab="Paysages")

L'extrait de code suivant montre l'analyse exploratoire des données des véhicules collectées à l'aide des outils GPS pour l'estimation du temps de parcours en véhicule motorisé.

# variable distance

par(mfrow = c(1,3))

hist(track.database.model.v1$distance.origine, col='grey', main=NULL,xlab='Distance des parcours effectués', ylab = "Frequence")

track.database.model.v1$categorydistance <- cut(track.database.model.v1$distance.origine, c(0,2, max(track.database.model.v1$distance.origine)), include.lowest = TRUE)

table(track.database.model.v1$categorydistance)

boxplot(track.database.model.v1$speed~track.database.model.v1$categorydistance, ylab='Vitesse des véhicules ', xlab="Distance (km)")

plot(track.database.model.v1$distance.origine,track.database.model.v1$speed, ylab='Vitesse des véhicules / distance', pch=16, cex=0.5)

abline(lm(speed~distance.origine, data=track.database.model.v1), col='lightblue', lwd=2)

lines(smooth.spline(track.database.model.v1$distance.origine,track.database.model.v1$speed),col='red',lwd=2)

legend('topright',lty=1, cex = 0.8 ,col=c('lightblue','red'),c('Modèle linéaire','Modèle Non Linéaire'))

cor(track.database.model.v1$distance.origine, track.database.model.v1$speed, use = "complete.obs")

table(track.database.model.v1$bridge)

boxplot(track.database.model.v1$speed~track.database.model.v1$bridge, xlab="No - Pas de pond | Yes - Traversant un pond", ylab='Vitesse des véhicules en traversant un rivière')

# variable résidentielle

#par(mfrow = c(1,2))

table(track.database.model.v1$landuse)

boxplot(track.database.model.v1$speed~track.database.model.v1$landuse, ylab='Vitesse des véhicules par catégorie')

# variable pont

#par(mfrow = c(1,2))

table(track.database.model.v1$bridge)

boxplot(track.database.model.v1$speed~track.database.model.v1$bridge, ylab='Vitesse des véhicules par catégorie')

# variable réseaux routiers

#par(mfrow = c(1,2))

table(track.database.model.v1$highway)

track.database.model.v1$highway=factor(track.database.model.v1$highway, levels(track.database.model.v1$highway)[c(4,3,2,1)])

boxplot(track.database.model.v1$speed~track.database.model.v1$highway, ylab='Vitesse des véhicules par catégorie')

# variable individu

table(track.database.model.v1$individual)

track.database.model.v1$individual=factor(track.database.model.v1$individual, levels(track.database.model.v1$individual)[c(2,1)])

boxplot(track.database.model.v1$speed~track.database.model.v1$individual, ylab='Vitesse des véhicules par catégorie')

précédent sommaire suivant






Extinction Rebellion





Changeons ce systeme injuste, Soyez votre propre syndic





"L'ignorant affirme, le savant doute, le sage réfléchit"   Aristote