Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de Jour avec Streamlit sous Python

Problème de Jour avec Streamlit sous Python

Sujet résolu
    3 août 2023 à 16:11:23

    Translator
    Bonjour,
    Je suis actuellement en stage et j'aimerai développer une petite application interactive sous streamlit.
    Sur cette application j'aimerai y intégrer des graphiques sur des données journalières et mensuelles, or, j'ai un problème avec mes données journalières.
    Mes données vont de septembre 2015 à mai 2023, j'ai tout d'abord créer un dictionnaire sous la forme : {'2015' : {'9' : [t0,t1,t2,t3], ..., '12' : [t0,t1,t2,t3]}, '2016' : { '1' : [t0,t1,t2,t3], ..., '12' : [t0,t1,t2,t3]},...,'2023' : { '1' : [t0,t1,t2,t3], ..., '5' : [t0,t1,t2,t3]}}, j'ai ensuite créer des listes à partir de ce dictionnaire et enfin j'ai concaténé ces listes pour avoir un unique tableau.
    Cependant lorsque je passe ce tableau sous streamlit (en graphique ou dataframe, peu importe), et bien j'ai uniquement les données du mois de septembre 2015, donc du premier mois, ou sinon j'ai ce premier mois qui revient en boucle. C'est comme ci les données du mois de septembre 2015 "écrasaient" les données des autres mois, par exemple le 01/09/2015 écrase les données du 01/10/2015, du 01/11/2015, et ainsi de suite jusqu'au 30 septembre.
    Je vous fournis un extrait de mon code :
    liste_tableau
    concat
    dataframe
    et du coup avec st.write(nb_connex1) pour afficher le tableau.

    Et donc j'aimerai savoir si vous aviez une idée d'où pourrait venir le problème ? J'espère m'être bien fait comprendre.
    Je vous remercie d'avance.
    • Partager sur Facebook
    • Partager sur Twitter

    <audio class="audio-for-speech" />

    Translator
      3 août 2023 à 16:30:43

      AntoineData a écrit:

      Et donc j'aimerai savoir si vous aviez une idée d'où pourrait venir le problème ? J'espère m'être bien fait comprendre.

      ça affiche les données fournies...  probable que ça vienne de la mise en forme de ces données. Il faut donc regarder si ce que contient la liste retournée par get_tableau_global est de la forme attendue.

      Cela fait, s'assurer que ce format est bien de la forme attendue (regarder ce que ça donne en passant un petit tableau créé à la main).

      Et s'il faut corriger get_tableau_global, écriture et mise au point se font dans un script spécifique où on pourra tester différents cas de figures. Et lorsque ça fonctionne, on pourra l'intégrer au reste.

      L'avantage étant qu'en cas de difficultés vous aurez de quoi poster pour reproduire le problème rencontré.

      -
      Edité par mps 3 août 2023 à 16:38:06

      • Partager sur Facebook
      • Partager sur Twitter
        3 août 2023 à 16:37:05

        Bonjour,

        Le message qui suit est une réponse automatique activée par un membre de l'équipe de modération. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention.
        Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé.

        Pour plus d'informations, nous vous invitons à lire les règles générales du forum

        Merci de colorer votre code à l'aide du bouton Code

        Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton Code de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: python;">Votre code ici</pre>.

        Merci de modifier votre message d'origine en fonction.

        Liens conseillés

        • Partager sur Facebook
        • Partager sur Twitter
          4 août 2023 à 11:24:14

          mps a écrit:

          ça affiche les données fournies...  probable que ça vienne de la mise en forme de ces données. Il faut donc regarder si ce que contient la liste retournée par get_tableau_global est de la forme attendue.

          Cela fait, s'assurer que ce format est bien de la forme attendue (regarder ce que ça donne en passant un petit tableau créé à la main).

          Et s'il faut corriger get_tableau_global, écriture et mise au point se font dans un script spécifique où on pourra tester différents cas de figures. Et lorsque ça fonctionne, on pourra l'intégrer au reste.

          L'avantage étant qu'en cas de difficultés vous aurez de quoi poster pour reproduire le problème rencontré.

          -
          Edité par mps il y a environ 18 heures

          Translator



          get_tableau_global retourne une liste de plusieurs tableaux chaque tableau concerne un mois, il y a donc un tableau de septembre 2015, octobre 2015, novembre 2015... Et ainsi de suite jusqu'à mai 2023. Donc lorsque je les concatène j'ai tout ça à la suite.

          Lorsque j'affiche la liste des tableaux ou la concaténation dans python je n'ai aucun problème, ça affiche mes données correctement, mais c'est en l'intégrant dans streamlit que le problème intervient, avec le mois de septembre 2015 qui revient en boucle à la place des autres mois.

          C'est ici j'ai beau essayer plein de choses je ne comprends pas pourquoi j'ai ce soucis..

          • Partager sur Facebook
          • Partager sur Twitter

          <audio class="audio-for-speech" />

          Translator
            4 août 2023 à 11:40:11

            @AntoineData Bonjour, merci de remplacer les images de code par du texte inséré sur le forum avec le bouton code </> de la barre d'outil.

            La modération

            • Partager sur Facebook
            • Partager sur Twitter
              4 août 2023 à 11:43:58

              AntoineData a écrit:

              C'est ici j'ai beau essayer plein de choses je ne comprends pas pourquoi j'ai ce soucis..


              Sans de quoi reproduire, il n'y a pas grand chose à gratter pour essayer de comprendre.... et juste affirmer avec force que les données sont bien construites dans le format attendu pour obtenir le résultat espéré n'apporte pas grand chose.

              -
              Edité par mps 4 août 2023 à 11:50:01

              • Partager sur Facebook
              • Partager sur Twitter
                4 août 2023 à 22:34:13

                mps a écrit:


                Sans de quoi reproduire, il n'y a pas grand chose à gratter pour essayer de comprendre.... et juste affirmer avec force que les données sont bien construites dans le format attendu pour obtenir le résultat espéré n'apporte pas grand chose.

                Translator
                J'ai résolu mon problème, ça venait de st.cache_data devant chacune de mes fonctions, le retirant mes données s'affichent correctement.

                • Partager sur Facebook
                • Partager sur Twitter

                <audio class="audio-for-speech" />

                Translator
                  5 août 2023 à 1:49:31

                  AntoineData a écrit:

                  J'ai résolu mon problème, [...]

                  Bonjour,

                  Sujet résolu

                  Tu peux passer le sujet à "résolu" (bouton en haut à droite du sujet) et cliquer sur les pouces levés des messages qui t'ont aidé⋅e ;)

                  • Partager sur Facebook
                  • Partager sur Twitter

                  Problème de Jour avec Streamlit sous Python

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown