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 :

génération de séquence


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 23
    Par défaut génération de séquence
    Bonjour,

    J'ai un autre soucis dans R.
    Je veux faire une génération de séquence.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    matrice = c()
    Sequence= seq(1,200,by=1) # j'ai 200 colonnes
    Le problème c'est que mes données vont de 400 à 600 et non 0 à 200.
    N'y a t'il pas moyen de lui demander de me le faire de 400 à 600 parce qu'après je dois faire un graphe en fonction de "Sequence" et qu'il m'affiche forcément 0 à 200 sur l'axe des abcisses.

    Tant que j'y suis, chaque nombre correspond à une autre séquence distribuée non régulièrement :
    exemple :
    400 = 567
    401 = 571
    402 = 578
    403 = 687 etc....
    Peut-on remplacer les chiffres d'origine par les nouveaux et respecter les échelles sur le graphe ?

    Je ne sais pas si je me suis bien exprimée
    Merci

  2. #2
    Modératrice

    Femme Profil pro
    Statisticienne, Fondatrice de la société DACTA
    Inscrit en
    Juin 2010
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Statisticienne, Fondatrice de la société DACTA

    Informations forums :
    Inscription : Juin 2010
    Messages : 893
    Par défaut
    Bonjour,

    Votre problème ne me semble pas très clair mais voici quelques éléments qui pourront peut-être vous aider...

    Une séquence de 400 à 600 par pas de 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    sequence<-seq(400,600,by=1)
    sequence
     [1] 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417
     [19] 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435
     [37] 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453
     [55] 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471
     [73] 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489
     [91] 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507
    [109] 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525
    [127] 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543
    [145] 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561
    [163] 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579
    [181] 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597
    [199] 598 599 600
    Citation Envoyé par Jesk34
    Tant que j'y suis, chaque nombre correspond à une autre séquence distribuée non régulièrement :
    exemple :
    400 = 567
    401 = 571
    402 = 578
    403 = 687 etc....
    Peut-on remplacer les chiffres d'origine par les nouveaux et respecter les échelles sur le graphe ?
    Pour moi, le mieux serait de prendre comme vecteur d'abscisses le vecteur correspondant à vos valeurs (par exemple : c(567,571,578,687,...) ), et comme vecteur d'ordonnées les valeurs correspondantes.
    En effet, les écarts entre les différentes valeurs seront respectés par défaut par la fonction "plot" et les valeurs affichées sur l'axe seront celles du vecteur des abscisses.

    En espérant que cela puisse vous aider. Sinon le mieux serait que vous postiez un court mais représentatif extrait de vos données et du code testé.

    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/cours/ .

    Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 23
    Par défaut
    Citation Envoyé par A. D. Voir le message
    Bonjour,

    Votre problème ne me semble pas très clair mais voici quelques éléments qui pourront peut-être vous aider...

    Une séquence de 400 à 600 par pas de 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    sequence<-seq(400,600,by=1)
    sequence
     [1] 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417
     [19] 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435
     [37] 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453
     [55] 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471
     [73] 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489
     [91] 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507
    [109] 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525
    [127] 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543
    [145] 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561
    [163] 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579
    [181] 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597
    [199] 598 599 600
    Le problème si je fais ça c'est qu'il va me séquencer de la 400ème colonne à la 600ème colonne de mon tableau... Alors que moi j'ai bien 200 colonnes mais qui démarrent pas à 1.

  4. #4
    Modératrice

    Femme Profil pro
    Statisticienne, Fondatrice de la société DACTA
    Inscrit en
    Juin 2010
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Statisticienne, Fondatrice de la société DACTA

    Informations forums :
    Inscription : Juin 2010
    Messages : 893
    Par défaut
    Le problème si je fais ça c'est qu'il va me séquencer de la 400ème colonne à la 600ème colonne de mon tableau... Alors que moi j'ai bien 200 colonnes mais qui démarrent pas à 1.
    Dans ce cas, votre problématique n'est pas bien posée...

    Si vous souhaitez récupérer les 200 premières colonnes d'un tableau appelé par exemple "tab", vous pouvez procéder ainsi :
    Si les colonnes qui vous intéressent ne démarrent pas à la première mais par exemple à la 3ème :
    Vous pouvez également créer un vecteur "vect" qui contient les numéros de colonnes qui vous intéressent, puis faire comme ceci pour les récupérer :
    Je ne comprends pas bien ce que vous cherchez à faire... Le mieux serait que vous postiez un extrait de votre jeu de données (au moins pour que nous ayons une idée de la structure), et que vous précisiez votre problématique.


    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/cours/ .

    Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.

  5. #5
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 23
    Par défaut
    Jeu de données :
    testforum.xlsx

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    matrice = c()
    SeqNiv= seq(1,10,by=1) 
    for (i in SeqNiv)
    {
    a = hist(gbl[,i],breaks=seq(0,1,by=0.01),plot=TRUE)
    matrice = cbind(matrice,a$density/max(a$density))
    }
    dim(matrice)
    image(SeqNiv,seq(0,1,0.01),t(matrice),col=gray(1-seq(0,1,length.out=100)))
    Ce que je veux : [Edit : mon premier jet était sur 20 colonnes... d'où le 20, dans le fichier envoyéc'est 10 )
    Nom : testforum.png
Affichages : 65
Taille : 5,8 Ko

    Sauf que j'aimerais dans un premier temps qu'il y ait 400 à 410 en abcisse.
    En fait ce sont des carottages faits dans le sol, ce sont des profondeurs et chaque profondeur correspond à une date 14C. Si je pouvais avoir ces dates en abcisse à la place de la profondeur ce serait top.

  6. #6
    Modératrice

    Femme Profil pro
    Statisticienne, Fondatrice de la société DACTA
    Inscrit en
    Juin 2010
    Messages
    893
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Statisticienne, Fondatrice de la société DACTA

    Informations forums :
    Inscription : Juin 2010
    Messages : 893
    Par défaut
    Bon, je ne suis toujours pas sûre de bien comprendre : ce que vous voudriez c'est simplement qu'au lieu des valeurs 0 à 10 vous ayez 400 à 410 en abscisse sur votre graphe?
    Si oui, vous pouvez par exemple faire comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    image(SeqNiv,seq(0,1,0.01),t(matrice),col=gray(1-seq(0,1,length.out=100)),xaxt="n")
    axis(1,at=0:10,labels=seq(400,410,1)) # vous pouvez remplacer l'argument "labels" par un vecteur contenant vos dates par exemple
    En espérant que ceci vous aide à avancer...


    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/cours/ .

    Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.

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

Discussions similaires

  1. génération des séquences avec perms
    Par sophielow dans le forum MATLAB
    Réponses: 3
    Dernier message: 24/02/2013, 13h11
  2. Réponses: 0
    Dernier message: 14/04/2010, 01h03
  3. génération d'une m-séquence
    Par loulitta dans le forum Signal
    Réponses: 0
    Dernier message: 25/02/2010, 09h48
  4. Génération d'une séquence alphanumérique
    Par nicoletflo dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 06/05/2008, 15h04
  5. Réponses: 18
    Dernier message: 08/07/2006, 14h26

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