Pandas Dataframe column will set to string but not integer












0















I am trying to set the values in a Dataframe to the values from a separate dataframe. This works just fine when the source column is a string but the integer columns are not being copied, or throwing an error.



RentryDf=pd.DataFrame(index=tportDf.index.values,columns=tradesDf.columns)        
RentryDf.loc[:,'TRADER']=tportDf.loc[:,'TRADER']
RentryDf.loc[:,'CONTRACT_VOL']=tportDf.loc[:,'DELIVERY VOLUME']


the second line has no problem setting to the string names of trader but the third line stays NaN. I have tried the two lines of code to just see if they would work and even these dont work.



RentryDf.loc[:,'CONTRACT_VOL']=11
RentryDf.loc[:,'CONTRACT_VOL'].apply(lambda x: 11)









share|improve this question


















  • 2





    Can you provide a reproducible example? It's easier to help with something to work with.

    – busybear
    Dec 31 '18 at 3:16











  • I solved my question while trying to recreate it (i guess i learned a good strategy!) The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values. I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?

    – mmarett
    Dec 31 '18 at 3:34
















0















I am trying to set the values in a Dataframe to the values from a separate dataframe. This works just fine when the source column is a string but the integer columns are not being copied, or throwing an error.



RentryDf=pd.DataFrame(index=tportDf.index.values,columns=tradesDf.columns)        
RentryDf.loc[:,'TRADER']=tportDf.loc[:,'TRADER']
RentryDf.loc[:,'CONTRACT_VOL']=tportDf.loc[:,'DELIVERY VOLUME']


the second line has no problem setting to the string names of trader but the third line stays NaN. I have tried the two lines of code to just see if they would work and even these dont work.



RentryDf.loc[:,'CONTRACT_VOL']=11
RentryDf.loc[:,'CONTRACT_VOL'].apply(lambda x: 11)









share|improve this question


















  • 2





    Can you provide a reproducible example? It's easier to help with something to work with.

    – busybear
    Dec 31 '18 at 3:16











  • I solved my question while trying to recreate it (i guess i learned a good strategy!) The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values. I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?

    – mmarett
    Dec 31 '18 at 3:34














0












0








0








I am trying to set the values in a Dataframe to the values from a separate dataframe. This works just fine when the source column is a string but the integer columns are not being copied, or throwing an error.



RentryDf=pd.DataFrame(index=tportDf.index.values,columns=tradesDf.columns)        
RentryDf.loc[:,'TRADER']=tportDf.loc[:,'TRADER']
RentryDf.loc[:,'CONTRACT_VOL']=tportDf.loc[:,'DELIVERY VOLUME']


the second line has no problem setting to the string names of trader but the third line stays NaN. I have tried the two lines of code to just see if they would work and even these dont work.



RentryDf.loc[:,'CONTRACT_VOL']=11
RentryDf.loc[:,'CONTRACT_VOL'].apply(lambda x: 11)









share|improve this question














I am trying to set the values in a Dataframe to the values from a separate dataframe. This works just fine when the source column is a string but the integer columns are not being copied, or throwing an error.



RentryDf=pd.DataFrame(index=tportDf.index.values,columns=tradesDf.columns)        
RentryDf.loc[:,'TRADER']=tportDf.loc[:,'TRADER']
RentryDf.loc[:,'CONTRACT_VOL']=tportDf.loc[:,'DELIVERY VOLUME']


the second line has no problem setting to the string names of trader but the third line stays NaN. I have tried the two lines of code to just see if they would work and even these dont work.



RentryDf.loc[:,'CONTRACT_VOL']=11
RentryDf.loc[:,'CONTRACT_VOL'].apply(lambda x: 11)






python pandas dataframe






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Dec 31 '18 at 3:10









mmarettmmarett

11




11








  • 2





    Can you provide a reproducible example? It's easier to help with something to work with.

    – busybear
    Dec 31 '18 at 3:16











  • I solved my question while trying to recreate it (i guess i learned a good strategy!) The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values. I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?

    – mmarett
    Dec 31 '18 at 3:34














  • 2





    Can you provide a reproducible example? It's easier to help with something to work with.

    – busybear
    Dec 31 '18 at 3:16











  • I solved my question while trying to recreate it (i guess i learned a good strategy!) The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values. I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?

    – mmarett
    Dec 31 '18 at 3:34








2




2





Can you provide a reproducible example? It's easier to help with something to work with.

– busybear
Dec 31 '18 at 3:16





Can you provide a reproducible example? It's easier to help with something to work with.

– busybear
Dec 31 '18 at 3:16













I solved my question while trying to recreate it (i guess i learned a good strategy!) The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values. I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?

– mmarett
Dec 31 '18 at 3:34





I solved my question while trying to recreate it (i guess i learned a good strategy!) The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values. I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?

– mmarett
Dec 31 '18 at 3:34












2 Answers
2






active

oldest

votes


















0














I solved my question while trying to recreate it (i guess i learned a good strategy!)



The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values.



I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?






share|improve this answer































    0














    I can't reproduce the bug, it works both for float64 and int64.



    I guess the problem could be wrong indexing, since line 1 will create a DF with all value as NaN.






    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%2f53983220%2fpandas-dataframe-column-will-set-to-string-but-not-integer%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









      0














      I solved my question while trying to recreate it (i guess i learned a good strategy!)



      The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values.



      I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?






      share|improve this answer




























        0














        I solved my question while trying to recreate it (i guess i learned a good strategy!)



        The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values.



        I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?






        share|improve this answer


























          0












          0








          0







          I solved my question while trying to recreate it (i guess i learned a good strategy!)



          The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values.



          I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?






          share|improve this answer













          I solved my question while trying to recreate it (i guess i learned a good strategy!)



          The problem was in my deceleration of the dataframe i was passing columns=tradesDf.columns rather than columns=tradesDf.columns.values.



          I am pleased to have it fixed but does anyone know why this would cause the DF not to set the integer values but it would set string values?







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Dec 31 '18 at 3:31









          mmarettmmarett

          11




          11

























              0














              I can't reproduce the bug, it works both for float64 and int64.



              I guess the problem could be wrong indexing, since line 1 will create a DF with all value as NaN.






              share|improve this answer




























                0














                I can't reproduce the bug, it works both for float64 and int64.



                I guess the problem could be wrong indexing, since line 1 will create a DF with all value as NaN.






                share|improve this answer


























                  0












                  0








                  0







                  I can't reproduce the bug, it works both for float64 and int64.



                  I guess the problem could be wrong indexing, since line 1 will create a DF with all value as NaN.






                  share|improve this answer













                  I can't reproduce the bug, it works both for float64 and int64.



                  I guess the problem could be wrong indexing, since line 1 will create a DF with all value as NaN.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Dec 31 '18 at 3:45









                  Yan Chih YingYan Chih Ying

                  213




                  213






























                      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%2f53983220%2fpandas-dataframe-column-will-set-to-string-but-not-integer%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

                      Mossoró

                      Error while reading .h5 file using the rhdf5 package in R

                      Pushsharp Apns notification error: 'InvalidToken'