pandas 在Python中从 Dataframe 中删除组/id [重复]

relj7zay  于 2023-09-29  发布在  Python
关注(0)|答案(1)|浏览(111)

此问题已在此处有答案

How to filter Pandas dataframe using 'in' and 'not in' like in SQL(12个回答)
昨天关门了。
我有一个这样的datafame:

#Load the required libraries
import pandas as pd
import matplotlib.pyplot as plt

#Create data_set
data_set = {'id': [1, 
                   1,
                   1, 
                   1,
                   1,

                   2,
                   2,
                   2, 
                   2,
                   2,
                   2,
                   2,
                   2,
                   
                   3,
                   3,
                   3, 
                   3,
                   3,
                   3,
                   3,

                   4,
                   4,
                   4,
                   
                   ],
            'cycle': [1,
                      2,
                      3, 
                      4,
                      5,

                      1,
                      2,
                      3, 
                      4,
                      5,
                      6,
                      7,
                      8,

                      1,
                      2,
                      3, 
                      4,
                      5,
                      6,
                      7,

                      1,
                      2,
                      3,

                      ],
            
            'Salary': [10,
                       20,
                       30, 
                       40,
                       50,

                       10,
                       20,
                       30, 
                       40,
                       50,
                       60,
                       70,
                       10,

                       10,
                       20,
                       30, 
                       40,
                       50,
                       10,
                       80,

                       60,
                       70,
                       10,

                       ],
             'Expenditure': [100,
                             210,
                             320,
                             430,
                             540,

                             90,
                             200,
                             310,
                             420,
                             530,
                             100,
                             200,
                             300,

                             80,
                             190,
                             300,
                             410,
                             520,
                             340,
                             780,

                             100,
                             200,
                             300,
                             ],
            
               }

#Convert to dataframe
df = pd.DataFrame(data_set)
print("\n df = \n",df)

上面的数据框看起来是这样的:

这里id=1出现了5次。
同样id=2出现8次; id=3出现7次; id=4出现3次
现在,我希望删除id=2的所有行;且id=4。
dataframe中的结果看起来是这样的:

有人能告诉我如何在Python中实现这个任务吗?

iqjalb3h

iqjalb3h1#

new_df = df[(df['id'] != 2) & (df['id'] != 4)]能满足您的需求吗?

相关问题