尝试使用放置功能删除某些情况下的行

时间:2018-07-21 12:31:52

标签: python pandas

我试图删除具有某些值的行,我使用了drop函数,并且还保留了就地参数为True,但是当我将数据帧写入新文件时,它并没有被删除。

这是我的代码-

import pandas as pd
import numpy as np

assessment = pd.read_csv('/home/user/Documents/MOOC dataset new/students_Vle3_registration_info.csv')
assessment = assessment.values
i=0
n=[]
for assm in assessment[:,13:14]:
    if(assm=='Withdrawn'):
        n.append(i)
    i=i+1

assessment = pd.DataFrame(assessment)
assessment.drop(n,inplace=True )
assessment.to_csv('/home/user/Documents/MOOC dataset new/students_Vle3_registration_info_withdraw_removed.csv')

我的代码有什么问题?

1 个答案:

答案 0 :(得分:1)

在没有太多信息的情况下,我宁愿使用向量化方法:

import pandas as pd

assessment = pd.read_csv('/home/user/Documents/MOOC dataset new/students_Vle3_registration_info.csv')

condition = (assessment[col13].str.contains('Withdrawn')) | (assessment[col14].str.contains('Withdrawn'))

#col13 and col14 are the columns in your dataframe you are selecting by

assessment = assessment.drop(assessment[condition].index)