IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Calcul scientifique Python Discussion :

Problème d'interpolation avec interp1d [Python 3.X]


Sujet :

Calcul scientifique Python

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2015
    Messages : 44
    Points : 55
    Points
    55
    Par défaut Problème d'interpolation avec interp1d
    Bonjour,

    Je tente de faire une interpolation 1d avec la bibliothèque: scipy.interpolate, et j'utilise interp1d. Mais j'obtiens une erreurs: ValueError: A value in x_new is above the interpolation range

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    x = np.arange(0,len(matrice_defaut_acq[0]),1) 
    for col in matrice_defaut_acq:
        f1d = interpolate.interp1d(x,col,kind='cubic') 
        xnew=np.linspace(0,len(matrice_defaut_acq[0]),len(matrice_defaut_bdd[0]))
        plt.figure()
        plt.plot(x,col,'r-',x,col,'ro',xnew,f1d(xnew),'co',xnew,f1d(xnew),'c--')
    matrice_defaut_acq est la matrice que je récupère de mon capteur, et matrice_defaut_bdd est la matrice de ma base de données correspondant à un même défaut. Le pas de la matrice de la base de données est 100x plus fin que celle du capteur.

    Merci d'avance

  2. #2
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2015
    Messages : 44
    Points : 55
    Points
    55
    Par défaut
    Pour ceux qui ont le même problème que moi, il suffit de mettre le paramètre bounds_error à false dans la fonction interp1d:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    x = np.arange(0,len(matrice_defaut_acq[0]),1) 
    for col in matrice_defaut_acq:
        f1d = interpolate.interp1d(x,col,bounds_error=False,kind='cubic') 
        xnew=np.linspace(0,len(matrice_defaut_acq[0]),len(matrice_defaut_bdd[0]))
        plt.figure()
        plt.plot(x,col,'r-',x,col,'ro',xnew,f1d(xnew),'co',xnew,f1d(xnew),'c--')

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de mémoire avec BDE
    Par Machuet dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/07/2004, 10h11
  2. problème de requête avec jointures
    Par tinhat dans le forum Requêtes
    Réponses: 7
    Dernier message: 11/08/2003, 10h33
  3. Problème dans requête avec count()
    Par BadFox dans le forum Requêtes
    Réponses: 3
    Dernier message: 08/07/2003, 18h02
  4. [Kylix] problème compilation kylix3 avec redhat 9.0
    Par madininaoursa dans le forum EDI
    Réponses: 1
    Dernier message: 02/07/2003, 16h21
  5. Problèmes de versions avec Xalan, Xerces et Java
    Par honeyz dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 05/06/2003, 10h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo