Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Invité régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    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 :
    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
    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 :
    symbole inattendu après meteo[j-1,3]

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro Cédric Duprez
    Gestion de bases de données techniques
    Inscrit en
    avril 2002
    Messages
    5 040
    Détails du profil
    Informations personnelles :
    Nom : Homme Cédric Duprez
    Âge : 39
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : avril 2002
    Messages : 5 040
    Points : 16 525
    Points
    16 525

    Par défaut

    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 et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Invité régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    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

    ca donne le même message d'erreur .
    Ca m'enerve

  4. #4
    Modératrice

    Femme Profil pro Aline Deschamps
    Chargée de Statistiques
    Inscrit en
    juin 2010
    Messages
    509
    Détails du profil
    Informations personnelles :
    Nom : Femme Aline Deschamps
    Âge : 26
    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 : 509
    Points : 1 330
    Points
    1 330

    Par défaut

    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.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •