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

R Discussion :

Sommer un polynôme et le tracer


Sujet :

R

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Enseignant
    Inscrit en
    Septembre 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Sommer un polynôme et le tracer
    Bonjour,

    Je souhaite tracer un graphique de la valeur d'un polynôme de degré i en fonction de x. Chaque terme du polynôme est précédé d'un coefficient qui est issu d'un tirage aléatoire sans remise. Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    i <- 5 # nombre de valeurs à générer
    coef <- data.frame(sample(1:20, i)) # création d'un tableau contenant les coefficients créés
    a <- 1:i # degré des polynomes
    polynome <- data.frame(coef, a) # Tableau attribuant à chaque coefficient un degré qui lui est associé
    names(polynome)=c("i", "a")
     
    x <- 2 #Valeur de x quelconque
    Vx <- polynome$i*x^polynome$a # Valeur d'un des facteurs ix^a
    Polynome <- data.frame(polynome, Vx) 
     
    S <- sum(Vx, na.rm=TRUE) # Valeur du polynôme pour une certaine valeur de x
    Le problème est que dès que j'essaye de le réaliser pour une séquence de valeurs x et non plus seulement pour une valeur, et que je le mets dans un graphique, j'ai un message d'erreur qui s'affiche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    x <- seq(from = -5, to = 5, by = 0.01)
    Vx <- polynome$i*x^polynome$a
    S <- sum(Vx, na.rm=TRUE)
    plot(x, S, type = "l")
     
    Warning messages:
    1: In x^polynome$a :
      longer object length is not a multiple of shorter object length
    2: In polynome$i * x^polynome$a :
      longer object length is not a multiple of shorter object length

    Quelqu'un a-t-il une idée de comment je peux arriver à mes fins ?

    Merci beaucoup

  2. #2
    Membre éclairé
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Points : 793
    Points
    793
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # i i degre du polynome
    # a = vecteur des degres
    # x = vecteur des valeurs
    # coef = vecteurs des coefficients
    a <- 0:i # constante = degre zero
    coef <- sample( 1:20, i + 1) # premier coefficient = constante
    x <- seq(from = -5, to = 5, by = 0.01)
    
    S <- colSums( kronecker( t( x), a, "^") * co)

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/07/2018, 12h02
  2. Réponses: 2
    Dernier message: 12/06/2018, 14h44
  3. Réponses: 0
    Dernier message: 24/05/2011, 17h45
  4. [VB6] [Graphisme] Tracer un cercle avec pset
    Par bleuerouge dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 09/12/2002, 17h12
  5. Tracer une ligne droite sans les interruptions
    Par Stef784ever dans le forum x86 16-bits
    Réponses: 4
    Dernier message: 25/11/2002, 01h22

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