Précédent   Forum du club des développeurs et IT Pro > Autres langages > Autres langages > R
R Forum d'entraide sur la programmation en langage R
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 07/01/2013, 14h56   #1
xavier_dcf
Invité régulier
 
Homme
Étudiant
Inscription : octobre 2012
Messages : 52
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2012
Messages : 52
Points : 5
Points : 5
Par défaut petit programme sous R

Voila j'ai un tableau de villes avec leurs coordonnées géographiques (46 villes)

tableau : meteo
Voici un extrait :
Citation:
ville latituderadians longituderadians
ST QUENTIN 0.870046632 0.057304919
CHARLEVILLE-MEZ 0.868592249 0.082321421
AUXERRE 0.834267382 0.062250135
Et j'ai un tableau de points (b_cod_pr) avec leurs coordonnées géographiques où je dois remplir la colonne repère = ville du tableau météo la plus proche du PR.

tableau : prformeteo
Citation:
b_cod_pr repere latituderadians longituderadians
14796686 NULL 0.855275213 0.044870495
15458884 NULL 0.888723575 0.031789951
J'ai fait un programme moi-même calculant la distance entre deux points qui marche très bien get_distancemetre(lat1,long1,lat2,long2), (je peux vous le transmettre si besoin) et je suis en train de faire la suite qui affecte pour une observation i (un code pr) la ville de météo la plus proche.
Voici mon programme :
Code :
1
2
3
4
5
6
7
8
> villecorr=function(i){ 
  for(j in 2 : 46) {
    if (get_distancemetre(prformeteo[i,3],prformeteo[i,4],meteo[j,2],meteo[j,3]) < get_distancemetre(prformeteo[i,3],prformeteo[i,4],meteo[j-1,2],meteo[j-1,3])) 
      result=meteo[j,1] 
    else result=meteo[j-1,1]
  }
  return(result)
}
Il y a un message d'erreur :
Citation:
symbole inattendu après meteo[j-1,3]
xavier_dcf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2013, 15h23   #2
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 4 059
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 37
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 4 059
Points : 8 915
Points : 8 915
Bonjour,

Avez-vous essayé comme ceci :
Code :
1
2
3
4
5
6
7
8
9
10
11
villecorr=function(i){ 
  for(j in 2 : 46) {
    if (get_distancemetre(prformeteo[i,3],prformeteo[i,4],meteo[j,2],meteo[j,3]) < get_distancemetre(prformeteo[i,3],prformeteo[i,4],meteo[j-1,2],meteo[j-1,3])) {
      result=meteo[j,1] 
    }
    else {
      result=meteo[j-1,1]
    }
  }
  return(result)
}
Sinon, le package sp contient bon nombre de fonctions qui permettent de faire ce que vous avez reprogrammé.
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2013, 15h53   #3
xavier_dcf
Invité régulier
 
Homme
Étudiant
Inscription : octobre 2012
Messages : 52
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2012
Messages : 52
Points : 5
Points : 5
ca donne le même message d'erreur .
Ca m'enerve
xavier_dcf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 11h08   #4
A. D.
Modératrice
 
Femme Aline Deschamps
Chargée de Statistiques
Inscription : juin 2010
Messages : 464
Détails du profil
Informations personnelles :
Nom : Femme Aline Deschamps
Âge : 25
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Chargée de Statistiques
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2010
Messages : 464
Points : 1 277
Points : 1 277
Envoyer un message via Skype™ à A. D.
Bonjour,

A la vue du message d'erreur, je dirais que peut-être que le problème se situe dans les données (tableau "meteo") ?

Bonne continuation


Cordialement,

A.D.
__________________

Forum R
Fournir le code utilisé (pensez aux balises code !), les packages nécessaires, ainsi qu'un court mais représentatif extrait du jeu de données et les éventuels messages d'erreur.
Recherche d'informations concernant R : RSiteSearch / tutoriels : http://r.developpez.com/ .

Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.
A. D. est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 11h55.


 
 
 
 
Partenaires

Hébergement Web