Convert dataframe into dictionary

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








10















I have a dataframe and i want it to select a few columns and convert it into Dictionary in the a certain manner



Dataframe:



Dataframe :



and here's the output I want



20: [4.6, 4.3, 4.3, 20],
21: [4.6, 4.3, 4.3, 21],
22: [6.0, 5.6, 9.0, 22],
23: [8.75, 5.6, 6.6, 23]


I have tried this



items_dic = data[["Length","Width","Height","Pid" ]].set_index('Pid').T.to_dict('list')

items_dic = 20: [4.6, 4.3, 4.3],
21: [4.6, 4.3, 4.3],
22: [6.0, 5.6, 9.0],
23: [8.75, 5.6, 6.6]


but this does not include Pid in the list of values
Can someone explain why ?










share|improve this question



















  • 2





    Please, write the dataframe in proper format, not in picture.

    – pistol2myhead
    Mar 12 at 6:19






  • 1





    I am sorry but I am fairly new to SO and I don't know how to do that

    – Rahul Sharma
    Mar 12 at 6:22






  • 2





    drop=False in set_index is what you need

    – Sreeram TP
    Mar 12 at 6:25

















10















I have a dataframe and i want it to select a few columns and convert it into Dictionary in the a certain manner



Dataframe:



Dataframe :



and here's the output I want



20: [4.6, 4.3, 4.3, 20],
21: [4.6, 4.3, 4.3, 21],
22: [6.0, 5.6, 9.0, 22],
23: [8.75, 5.6, 6.6, 23]


I have tried this



items_dic = data[["Length","Width","Height","Pid" ]].set_index('Pid').T.to_dict('list')

items_dic = 20: [4.6, 4.3, 4.3],
21: [4.6, 4.3, 4.3],
22: [6.0, 5.6, 9.0],
23: [8.75, 5.6, 6.6]


but this does not include Pid in the list of values
Can someone explain why ?










share|improve this question



















  • 2





    Please, write the dataframe in proper format, not in picture.

    – pistol2myhead
    Mar 12 at 6:19






  • 1





    I am sorry but I am fairly new to SO and I don't know how to do that

    – Rahul Sharma
    Mar 12 at 6:22






  • 2





    drop=False in set_index is what you need

    – Sreeram TP
    Mar 12 at 6:25













10












10








10


1






I have a dataframe and i want it to select a few columns and convert it into Dictionary in the a certain manner



Dataframe:



Dataframe :



and here's the output I want



20: [4.6, 4.3, 4.3, 20],
21: [4.6, 4.3, 4.3, 21],
22: [6.0, 5.6, 9.0, 22],
23: [8.75, 5.6, 6.6, 23]


I have tried this



items_dic = data[["Length","Width","Height","Pid" ]].set_index('Pid').T.to_dict('list')

items_dic = 20: [4.6, 4.3, 4.3],
21: [4.6, 4.3, 4.3],
22: [6.0, 5.6, 9.0],
23: [8.75, 5.6, 6.6]


but this does not include Pid in the list of values
Can someone explain why ?










share|improve this question
















I have a dataframe and i want it to select a few columns and convert it into Dictionary in the a certain manner



Dataframe:



Dataframe :



and here's the output I want



20: [4.6, 4.3, 4.3, 20],
21: [4.6, 4.3, 4.3, 21],
22: [6.0, 5.6, 9.0, 22],
23: [8.75, 5.6, 6.6, 23]


I have tried this



items_dic = data[["Length","Width","Height","Pid" ]].set_index('Pid').T.to_dict('list')

items_dic = 20: [4.6, 4.3, 4.3],
21: [4.6, 4.3, 4.3],
22: [6.0, 5.6, 9.0],
23: [8.75, 5.6, 6.6]


but this does not include Pid in the list of values
Can someone explain why ?







python python-3.x pandas dataframe dictionary






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 29 at 13:43









Davy de Vries

577416




577416










asked Mar 12 at 6:16









Rahul SharmaRahul Sharma

167113




167113







  • 2





    Please, write the dataframe in proper format, not in picture.

    – pistol2myhead
    Mar 12 at 6:19






  • 1





    I am sorry but I am fairly new to SO and I don't know how to do that

    – Rahul Sharma
    Mar 12 at 6:22






  • 2





    drop=False in set_index is what you need

    – Sreeram TP
    Mar 12 at 6:25












  • 2





    Please, write the dataframe in proper format, not in picture.

    – pistol2myhead
    Mar 12 at 6:19






  • 1





    I am sorry but I am fairly new to SO and I don't know how to do that

    – Rahul Sharma
    Mar 12 at 6:22






  • 2





    drop=False in set_index is what you need

    – Sreeram TP
    Mar 12 at 6:25







2




2





Please, write the dataframe in proper format, not in picture.

– pistol2myhead
Mar 12 at 6:19





Please, write the dataframe in proper format, not in picture.

– pistol2myhead
Mar 12 at 6:19




1




1





I am sorry but I am fairly new to SO and I don't know how to do that

– Rahul Sharma
Mar 12 at 6:22





I am sorry but I am fairly new to SO and I don't know how to do that

– Rahul Sharma
Mar 12 at 6:22




2




2





drop=False in set_index is what you need

– Sreeram TP
Mar 12 at 6:25





drop=False in set_index is what you need

– Sreeram TP
Mar 12 at 6:25












2 Answers
2






active

oldest

votes


















11














Set parameter drop=False in DataFrame.set_index, because default parameter drop=False move column to index:



cols = ["Length","Width","Height","Pid"]
items_dic = data[cols].set_index('Pid', drop=False).T.to_dict('list')

print (items_dic)

20: [4.6, 4.3, 4.3, 20.0],
21: [4.6, 4.3, 4.3, 21.0],
22: [6.0, 5.6, 9.0, 22.0],
23: [8.75, 5.6, 6.6, 23.0]





share|improve this answer
































    7














    Or use dict(zip(...)):



    >>> cols = ["Length","Width","Height","Pid"]
    >>> items_dic = dict(zip(df['Pid'],df[cols].values.tolist()))
    >>> items_dic
    20: [4.8, 4.3, 4.3, 20.0], 21: [4.8, 4.3, 4.3, 21.0], 22: [6.0, 5.6, 9.0, 22.0], 23: [8.75, 5.6, 6.6, 23.0], 24: [6.0, 5.16, 6.6, 24.0]
    >>>





    share|improve this answer

























      Your Answer






      StackExchange.ifUsing("editor", function ()
      StackExchange.using("externalEditor", function ()
      StackExchange.using("snippets", function ()
      StackExchange.snippets.init();
      );
      );
      , "code-snippets");

      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "1"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55115214%2fconvert-dataframe-into-dictionary%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      11














      Set parameter drop=False in DataFrame.set_index, because default parameter drop=False move column to index:



      cols = ["Length","Width","Height","Pid"]
      items_dic = data[cols].set_index('Pid', drop=False).T.to_dict('list')

      print (items_dic)

      20: [4.6, 4.3, 4.3, 20.0],
      21: [4.6, 4.3, 4.3, 21.0],
      22: [6.0, 5.6, 9.0, 22.0],
      23: [8.75, 5.6, 6.6, 23.0]





      share|improve this answer





























        11














        Set parameter drop=False in DataFrame.set_index, because default parameter drop=False move column to index:



        cols = ["Length","Width","Height","Pid"]
        items_dic = data[cols].set_index('Pid', drop=False).T.to_dict('list')

        print (items_dic)

        20: [4.6, 4.3, 4.3, 20.0],
        21: [4.6, 4.3, 4.3, 21.0],
        22: [6.0, 5.6, 9.0, 22.0],
        23: [8.75, 5.6, 6.6, 23.0]





        share|improve this answer



























          11












          11








          11







          Set parameter drop=False in DataFrame.set_index, because default parameter drop=False move column to index:



          cols = ["Length","Width","Height","Pid"]
          items_dic = data[cols].set_index('Pid', drop=False).T.to_dict('list')

          print (items_dic)

          20: [4.6, 4.3, 4.3, 20.0],
          21: [4.6, 4.3, 4.3, 21.0],
          22: [6.0, 5.6, 9.0, 22.0],
          23: [8.75, 5.6, 6.6, 23.0]





          share|improve this answer















          Set parameter drop=False in DataFrame.set_index, because default parameter drop=False move column to index:



          cols = ["Length","Width","Height","Pid"]
          items_dic = data[cols].set_index('Pid', drop=False).T.to_dict('list')

          print (items_dic)

          20: [4.6, 4.3, 4.3, 20.0],
          21: [4.6, 4.3, 4.3, 21.0],
          22: [6.0, 5.6, 9.0, 22.0],
          23: [8.75, 5.6, 6.6, 23.0]






          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Mar 12 at 6:26

























          answered Mar 12 at 6:19









          jezraeljezrael

          357k26322399




          357k26322399























              7














              Or use dict(zip(...)):



              >>> cols = ["Length","Width","Height","Pid"]
              >>> items_dic = dict(zip(df['Pid'],df[cols].values.tolist()))
              >>> items_dic
              20: [4.8, 4.3, 4.3, 20.0], 21: [4.8, 4.3, 4.3, 21.0], 22: [6.0, 5.6, 9.0, 22.0], 23: [8.75, 5.6, 6.6, 23.0], 24: [6.0, 5.16, 6.6, 24.0]
              >>>





              share|improve this answer





























                7














                Or use dict(zip(...)):



                >>> cols = ["Length","Width","Height","Pid"]
                >>> items_dic = dict(zip(df['Pid'],df[cols].values.tolist()))
                >>> items_dic
                20: [4.8, 4.3, 4.3, 20.0], 21: [4.8, 4.3, 4.3, 21.0], 22: [6.0, 5.6, 9.0, 22.0], 23: [8.75, 5.6, 6.6, 23.0], 24: [6.0, 5.16, 6.6, 24.0]
                >>>





                share|improve this answer



























                  7












                  7








                  7







                  Or use dict(zip(...)):



                  >>> cols = ["Length","Width","Height","Pid"]
                  >>> items_dic = dict(zip(df['Pid'],df[cols].values.tolist()))
                  >>> items_dic
                  20: [4.8, 4.3, 4.3, 20.0], 21: [4.8, 4.3, 4.3, 21.0], 22: [6.0, 5.6, 9.0, 22.0], 23: [8.75, 5.6, 6.6, 23.0], 24: [6.0, 5.16, 6.6, 24.0]
                  >>>





                  share|improve this answer















                  Or use dict(zip(...)):



                  >>> cols = ["Length","Width","Height","Pid"]
                  >>> items_dic = dict(zip(df['Pid'],df[cols].values.tolist()))
                  >>> items_dic
                  20: [4.8, 4.3, 4.3, 20.0], 21: [4.8, 4.3, 4.3, 21.0], 22: [6.0, 5.6, 9.0, 22.0], 23: [8.75, 5.6, 6.6, 23.0], 24: [6.0, 5.16, 6.6, 24.0]
                  >>>






                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Mar 12 at 7:45









                  Mudits

                  70811028




                  70811028










                  answered Mar 12 at 6:23









                  U9-ForwardU9-Forward

                  18.1k51744




                  18.1k51744



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Stack Overflow!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55115214%2fconvert-dataframe-into-dictionary%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown






                      Popular posts from this blog

                      How to check contact read email or not when send email to Individual?

                      Bahrain

                      Postfix configuration issue with fips on centos 7; mailgun relay