I'm trying to remove outliers from a dataset. In order to do that, I'm using:
df = df[df.attr < df.attr.mean() + df.attr.std()*3]
That seems to work as expected, but, when I do something like:
for i in xrange(df.shape[0]):
print df.attr[i]
Then I get a KeyError
. Seems like Pandas isn't actually returning a new DataFrame
with rows dropped. How do I actually remove those rows, and get a fully functional DataFrame
back?