使用python pandas从数据框中删除记录

时间:2019-04-27 22:47:42

标签: python pandas dataframe

我有一个包含三列的csv文件。该链接显示了我的数据框的组织方式:https://github.com/phdvidal92/Files/blob/master/Data_Qnty.csv

我只想介绍一些记录。对于SectionA,其值等于“提议”,对于SectionB,其值仅等于“正在探寻”。

我正在使用熊猫read_csv导入

arqv2 = pd.read_csv('Data_Qnty.csv', skiprows = 2,
                    delimiter = ',', encoding = 'latin1')

之后,我正尝试使用drop

arqv2 = arqv2.drop(arqv2[(arqv2['SectionA'] != 'Prospecting') && (arqv2['SectionB'] != 'Propose')].index)

它不起作用。你知道我如何实现我的目标吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

一种方法是使用query

df.query('SectionA == "Propose" and SectionB =="Prospecting"')

另一种方法是使用布尔索引:

df[(df['SectionA']  == 'Propose') & (df['SectionB'] == 'Prospecting')]

答案 1 :(得分:0)

如果要更改相同的数据帧,请使用inplace=True作为drop()的第二个参数,并使用&运算符而不是&&,如下所示:

arqv2.drop(
    arqv2[(arqv2['SectionA'] != 'Prospecting') & 
          (arqv2['SectionB'] != 'Propose')].index, 
    inplace=True)