calcul.dist.cities {prevR}R Documentation

Calcule la distance à la ville la plus proche et recode le milieu de résidence.

Description

Cette fonction calcule la distance de chaque cluster à la ville la plus proche et recode le milieu de résidence selon l'appartenance ou non à une agglomération urbaine. Un cluster est considéré comme appartenant à une agglomération urbaine s'il est à la fois urbain et situé à une distance inférieure à dist de la ville la plus proche.

Usage

calcul.dist.cities(
   clust,
   cities,
   dist = 15,
   type = "ask",
   lang = "en",
   var.cities = c("x", "y", "city.name"),
   var.clust = c("x", "y", "residence"),
   urban.code = "Urban",
   dist.func = "rdist.earth",
   miles = FALSE)

Arguments

clust data.frame. Une observation par cluster. Typiquement le résultat de la fonction make.clust.dbf.
cities data.frame. Une observation par ville. Typiquement le résultat de la fonction make.cities.csv.
dist numeric. Distance en dessous de laquelle un cluster urbain est considéré comme appartenant à une agglomération urbaine. Il ne s'agit pas de la taille d'une ville mais d'un paramètre permettant de distinguer les clusters urbains d'une agglomération urbaine des autres clusters urbains. Voir les détails pour l'unité à utiliser.
type character. Prend la valeur 'ask' ou 'all'. Voir les détails.
lang character. Permet de choisir la langue des messages utilisateur. fr pour le français, en pour l'anglais.
var.cities character vector. Liste spécifiant, dans l'ordre, le nom des variables de cities correspondant à la longitude, la latitude et le nom de chaque ville.
var.clust character vector. Liste spécifiant, dans l'ordre, le nom des variables de clust correspondant à la longitude, la latitude et le milieu de résidence. Le milieu de résidence doit être de type factor ou character.
urban.code character. Valeur texte spécifiant comment est codée la valeur urbain de la variable milieu de résidence dans clust.
dist.func character. Valeur texte spécifiant le nom de la fonction utilisée pour calculer les distances. Utilisez rdist.earth si vous utilisez des coordonnées longitude/latitude en degrés décimaux. Utilisez rdist pour des distances euclidiennes.
miles logical. TRUE ou FALSE. Variable transmise à rdist.earth si cette fonction est appelée. Calcul des distances en kilomètres si FALSE et en miles si TRUE.

Details

Si type = 'all', les distances de chaque cluster à l'ensemble des villes spécifiées dans cities sont calculées, puis la ville la plus proche de chaque cluster est sélectionnée. Si type = 'ask', une fenêtre présentant l'ensemble des villes contenues dans cities apparaîtra et vous serez invité à sélectioner les villes que vous souhaitez retenir pour la définition des agglomérations urbaines.

Si vous utilisez la fonction rdist, dist doit être exprimé dans la même unité que les coordonnées des clusters et des villes. Si vos coordonnées sont exprimées en degrés décimaux, utilisez la fonction rdist.earth et précisez avec le paramètre miles si vous souhaitez que les résultats soient exprimés en kilomètres ou en miles. dist devra être exprimé en kilomètres ou en miles selon le cas.

Value

La fonction renvoie clust en lui ajoutant trois variables nommées dist.city, city.name et urban.area (voir les détails ci-dessous). Si clust comporte déjà ces trois variables, les anciennes valeurs sont remplacées par les nouvelles valeurs calculées.

dist.city numeric. Distance à la ville la plus proche, exprimée avec la même unité que dist.
city.name character. Nom de la ville la plus proche.
urban.area factor with 2 levels : in urban area, outside urban area. Indique si le cluster appartient ou non à l'agglomération urbaine de city.name. Est considéré comme appartenant à une agglomération urbaine tout cluster à la fois urbain et situé à moins de dist de la ville considérée.

Note

Pour un pays de taille moyenne, 15 kilomètres est souvent un bon compromis pour dist. Pour le choix des agglomérations urbaines, voir le tutoriel de prevR (‘tutoriel.prevR.pdf’).

See Also

verif.urb et infos.prev pour obtenir des statistiques sur les fichiers de données.
map.clust et map.cities pour réaliser des cartes.

Examples

## Chargement des données
data(alicante)

## Carte des villes de plus de 100.000 habitants
map.cities(alicante.cities, alicante.bounds, min.population=100000,
   new.window=FALSE, main='Main cities of Alicante')

## Carte des clusters par milieu de résidence
x11()
map.clust(alicante.clust, alicante.bounds, type='urb', new.window=FALSE,
   main='Clusters by type of residence')

## Sélection des villes de plus de 100.000 habitants
main.cities <- alicante.cities[alicante.cities$population > 100000, ]

## Calcul des distances à la ville de plus de 100.000 habitants
## la plus proche et vérification des résulats
alicante.clust <- calcul.dist.cities(alicante.clust, main.cities,
   type='all', dist=25)
verif.urb(alicante.clust)

## Sélection des villes de plus de 250.000 habitants
main.cities <- alicante.cities[alicante.cities$population > 250000, ]

## Calcul des distances à la ville de plus de 250.000 habitants
## la plus proche et vérification des résulats
alicante.clust <- calcul.dist.cities(alicante.clust, main.cities,
   type='all', dist=25)
verif.urb(alicante.clust)
infos.prev(alicante.clust)

## Carte des clusters selon leur appartenance à une agglomération urbaine
x11()
map.clust(alicante.clust, alicante.bounds, type='urb', new.window=FALSE,
   var.urb='urban.area', inverse=TRUE,
        main='Clusters in urban agglomeration')


[Package prevR version 1.11 Index]