How to exclude rows based on multi column value conditions in pandas dataframe?Add one row to pandas DataFrameSelecting multiple columns in a pandas dataframeAdding new column to existing DataFrame in Python pandasDelete column from pandas DataFrameHow to drop rows of Pandas DataFrame whose value in certain columns is NaNHow do I get the row count of a pandas DataFrame?How to iterate over rows in a DataFrame in Pandas?Select rows from a DataFrame based on values in a column in pandasDeleting DataFrame row in Pandas based on column valueGet list from pandas DataFrame column headers

Would a bit of grease on overhead door cables or bearings cause the springs to break?

Converting 3x7 to a 1x7. Is it possible with only existing parts?

Nth term of Van Eck Sequence

What is wind "CALM"?

Struggling to present results from long papers in short time slots

Why is Skinner so awkward in Hot Fuzz?

What things do I only get a limited opportunity to take photos of?

Idiom for 'person who gets violent when drunk"

Manager wants to hire me; HR does not. How to proceed?

Dedicated bike GPS computer over smartphone

Is it a good security practice to force employees hide their employer to avoid being targeted?

How drastic would the result be if I use fasta or reference assembly from ucsc and gtf from gencode?

Can Dive Down protect a creature against Pacifism?

Is it true that "only photographers care about noise"?

Can an open source licence be revoked if it violates employer's IP?

What did the 8086 (and 8088) do upon encountering an illegal instruction?

How many times to repeat an event with known probability before it has occurred a number of times

Boss making me feel guilty for leaving the company at the end of my internship

Will users know a CardView is clickable

How can religions without a hell discourage evil-doing?

Are soroban (Japanese abacus) classes worth doing?

Does every chapter have to "blow the reader away" so to speak?

How long would it take for sucrose to undergo hydrolysis in boiling water?

Is fission/fusion to iron the most efficient way to convert mass to energy?



How to exclude rows based on multi column value conditions in pandas dataframe?


Add one row to pandas DataFrameSelecting multiple columns in a pandas dataframeAdding new column to existing DataFrame in Python pandasDelete column from pandas DataFrameHow to drop rows of Pandas DataFrame whose value in certain columns is NaNHow do I get the row count of a pandas DataFrame?How to iterate over rows in a DataFrame in Pandas?Select rows from a DataFrame based on values in a column in pandasDeleting DataFrame row in Pandas based on column valueGet list from pandas DataFrame column headers






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








1















There's pandas dataframe ad below:



email score
a@domain.com A
b@domain.com A
c@domain.com C
d@domain.com B


I want to exclude rows with email a@domain.com and c@domain.com.Expect result as below:



email score
b@domain.com A
d@domain.com B


I tried 3 times but failed:



df=df[df.email !='a@domain.com' & df.email !='c@domain.com' ]
TypeError: cannot compare a dtyped [object] array with a scalar of type [bool]


df=df[df.email !='a@domain.com' && df.email !='c@domain.com' ]
SyntaxError: invalid syntax


df=df[df.email !='a@domain.com' | 'c@domain.com' ]
TypeError: unsupported operand type(s) for |: 'str' and 'str'


What's the problem?










share|improve this question






























    1















    There's pandas dataframe ad below:



    email score
    a@domain.com A
    b@domain.com A
    c@domain.com C
    d@domain.com B


    I want to exclude rows with email a@domain.com and c@domain.com.Expect result as below:



    email score
    b@domain.com A
    d@domain.com B


    I tried 3 times but failed:



    df=df[df.email !='a@domain.com' & df.email !='c@domain.com' ]
    TypeError: cannot compare a dtyped [object] array with a scalar of type [bool]


    df=df[df.email !='a@domain.com' && df.email !='c@domain.com' ]
    SyntaxError: invalid syntax


    df=df[df.email !='a@domain.com' | 'c@domain.com' ]
    TypeError: unsupported operand type(s) for |: 'str' and 'str'


    What's the problem?










    share|improve this question


























      1












      1








      1








      There's pandas dataframe ad below:



      email score
      a@domain.com A
      b@domain.com A
      c@domain.com C
      d@domain.com B


      I want to exclude rows with email a@domain.com and c@domain.com.Expect result as below:



      email score
      b@domain.com A
      d@domain.com B


      I tried 3 times but failed:



      df=df[df.email !='a@domain.com' & df.email !='c@domain.com' ]
      TypeError: cannot compare a dtyped [object] array with a scalar of type [bool]


      df=df[df.email !='a@domain.com' && df.email !='c@domain.com' ]
      SyntaxError: invalid syntax


      df=df[df.email !='a@domain.com' | 'c@domain.com' ]
      TypeError: unsupported operand type(s) for |: 'str' and 'str'


      What's the problem?










      share|improve this question
















      There's pandas dataframe ad below:



      email score
      a@domain.com A
      b@domain.com A
      c@domain.com C
      d@domain.com B


      I want to exclude rows with email a@domain.com and c@domain.com.Expect result as below:



      email score
      b@domain.com A
      d@domain.com B


      I tried 3 times but failed:



      df=df[df.email !='a@domain.com' & df.email !='c@domain.com' ]
      TypeError: cannot compare a dtyped [object] array with a scalar of type [bool]


      df=df[df.email !='a@domain.com' && df.email !='c@domain.com' ]
      SyntaxError: invalid syntax


      df=df[df.email !='a@domain.com' | 'c@domain.com' ]
      TypeError: unsupported operand type(s) for |: 'str' and 'str'


      What's the problem?







      python pandas






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 25 at 2:34







      kittygirl

















      asked Mar 25 at 2:33









      kittygirlkittygirl

      597618




      597618






















          1 Answer
          1






          active

          oldest

          votes


















          1














          You have to surround it by parenthesis:



          df = df[(df.email != 'a@domain.com') & (df.email != 'c@domain.com')]


          That said, it would be easier with isin:



          df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]


          And now:



          print(df)


          Is gonna be the expected output.






          share|improve this answer


















          • 1





            what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

            – kittygirl
            Mar 25 at 2:36











          • @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

            – U9-Forward
            Mar 25 at 2:37







          • 1





            Why not ! but ~?

            – kittygirl
            Mar 25 at 2:39











          • @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

            – U9-Forward
            Mar 25 at 2:40











          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%2f55330568%2fhow-to-exclude-rows-based-on-multi-column-value-conditions-in-pandas-dataframe%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          You have to surround it by parenthesis:



          df = df[(df.email != 'a@domain.com') & (df.email != 'c@domain.com')]


          That said, it would be easier with isin:



          df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]


          And now:



          print(df)


          Is gonna be the expected output.






          share|improve this answer


















          • 1





            what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

            – kittygirl
            Mar 25 at 2:36











          • @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

            – U9-Forward
            Mar 25 at 2:37







          • 1





            Why not ! but ~?

            – kittygirl
            Mar 25 at 2:39











          • @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

            – U9-Forward
            Mar 25 at 2:40















          1














          You have to surround it by parenthesis:



          df = df[(df.email != 'a@domain.com') & (df.email != 'c@domain.com')]


          That said, it would be easier with isin:



          df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]


          And now:



          print(df)


          Is gonna be the expected output.






          share|improve this answer


















          • 1





            what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

            – kittygirl
            Mar 25 at 2:36











          • @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

            – U9-Forward
            Mar 25 at 2:37







          • 1





            Why not ! but ~?

            – kittygirl
            Mar 25 at 2:39











          • @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

            – U9-Forward
            Mar 25 at 2:40













          1












          1








          1







          You have to surround it by parenthesis:



          df = df[(df.email != 'a@domain.com') & (df.email != 'c@domain.com')]


          That said, it would be easier with isin:



          df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]


          And now:



          print(df)


          Is gonna be the expected output.






          share|improve this answer













          You have to surround it by parenthesis:



          df = df[(df.email != 'a@domain.com') & (df.email != 'c@domain.com')]


          That said, it would be easier with isin:



          df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]


          And now:



          print(df)


          Is gonna be the expected output.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 25 at 2:34









          U9-ForwardU9-Forward

          21.7k51847




          21.7k51847







          • 1





            what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

            – kittygirl
            Mar 25 at 2:36











          • @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

            – U9-Forward
            Mar 25 at 2:37







          • 1





            Why not ! but ~?

            – kittygirl
            Mar 25 at 2:39











          • @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

            – U9-Forward
            Mar 25 at 2:40












          • 1





            what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

            – kittygirl
            Mar 25 at 2:36











          • @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

            – U9-Forward
            Mar 25 at 2:37







          • 1





            Why not ! but ~?

            – kittygirl
            Mar 25 at 2:39











          • @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

            – U9-Forward
            Mar 25 at 2:40







          1




          1





          what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

          – kittygirl
          Mar 25 at 2:36





          what's ~ in df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]?

          – kittygirl
          Mar 25 at 2:36













          @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

          – U9-Forward
          Mar 25 at 2:37






          @kittygirl the isin means if it contains any element in the list, but since those are the ones you don't want, use that sign to get the opposite of it and remove those.

          – U9-Forward
          Mar 25 at 2:37





          1




          1





          Why not ! but ~?

          – kittygirl
          Mar 25 at 2:39





          Why not ! but ~?

          – kittygirl
          Mar 25 at 2:39













          @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

          – U9-Forward
          Mar 25 at 2:40





          @kittygirl That's a very good point, but in pandas, it is different, you have to use ~

          – U9-Forward
          Mar 25 at 2:40



















          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%2f55330568%2fhow-to-exclude-rows-based-on-multi-column-value-conditions-in-pandas-dataframe%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

          Obelisk of Theodosius Contents History Description Notes Bibliography Further reading External links Navigation menuAge of spirituality : late antique and early Christian art, third to seventh centuryOver 60 picturesObelisks of the World41°00′21.24″N 28°58′31.43″E / 41.0059000°N 28.9753972°E / 41.0059000; 28.97539727724550-7235741376235741376

          밀양 대씨 역사 각주 함께 보기 둘러보기 메뉴밀양 대씨

          1973년 목차 사건 문화 탄생 사망 노벨상 달력 둘러보기 메뉴