matrice dist géo à partir coordonnées lambert 93 ???

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

cecile capderrey
Messages : 2
Enregistré le : 10 Sep 2014, 13:02

matrice dist géo à partir coordonnées lambert 93 ???

Messagepar cecile capderrey » 10 Sep 2014, 14:00

Bonjour!

J’ai actuellement un tableau avec plus de 800 points de coordonnées GPS en lambert 93, et je souhaiterais pouvoir construire une matrice de distances (en mètres) entre ces différents points. Je cherche à utiliser la fonction dist. mais je n’arrive pas à saisir comment créer le vecteur à la base pour dire à R de créer la matrice.. cela doit avoir cette forme je crois : dist (c (colonnes, nrows? )) pour pouvoir faire la matrice entre chaque paire d’élément.. (?) La forme de mon tableau est comme ceci :
colonne1 : point
colonne2 : X(lambert93)
colonne 3 : Y(lambert93)

Désolée de ma question certainement un peu bête mais par avance merci beaucoup pour votre aide.. !

Cécile

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 10 Sep 2014, 15:01

Vos coordonnées sont déjà en m ou km ==> il suffit de fournir un data.frame ou une matrice les contenant à la fct dist:

Code : Tout sélectionner

> dfr <- data.frame(x = runif(5), y = runif(5))
> dist(dfr)
          1         2         3         4
2 0.6745876                             
3 0.1475672 0.7813601                   
4 0.6720553 0.2279171 0.7415854         
5 0.6851879 0.3607957 0.7288953 0.1339547
Renaud

cecile capderrey
Messages : 2
Enregistré le : 10 Sep 2014, 13:02

Messagepar cecile capderrey » 10 Sep 2014, 15:15

merci beaucoup pour votre réponse,
en fait je suis vraiment loin d'être douée sous R, donc je ne comprends pas très bien à quoi correspond runif(5), et pourquoi 5? et je ne peux pas fournir une matrice de ce type à la fonction dist.. le x et y sont bien mes colonnes, mais à quoi correspond le chiffre entre parenthèses?

J'ai bien trouvé une explication sur internet, par exemple:


dist(c(4, 5, 3, 1)) : renvoie la matrice de distances entre chaque paire d'éléments.
mat <- matrix(c(4, 5, 3, 1, 4, 5), nrow = 3); dist(mat) : renvoie la matrix de distances entre chaque paire de lignes de la matrice donnée.

Sauf..que je ne sais pas quoi remplacer par les éléments de mon tableau...

vraiment merci.. :)

Renaud Lancelot
Messages : 2484
Enregistré le : 16 Déc 2004, 08:01
Contact :

Messagepar Renaud Lancelot » 10 Sep 2014, 17:19

La fonction runif permet de générer des nombres aléatoires tirés (par défaut) dans l'intervalle [0, 1]. Dans l'exemple, c'est juste pour générer des données bidon et montrer qu'il suffit de fournir à la fonction dist un tableau (matrice ou data.frame) avec deux colonnes. La fonction retourne alors une matrice triangulaire avec les distances entre chaque paire de points.
Renaud


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 2 invités