我有一个pandas数据框,其中包含Dates&价格
现在我有一个与Dates相同长度Dates的Pandas系列,带有Dates和一个True或False布尔值,表示我是否应该删除该点。
我想从条件为真的rawdata中删除项目
outlier_idx
Date
1990-01-29 False
1990-01-30 True
1990-01-31 True
1990-01-02 False
1990-02-02 False
clean_data = raw_data.copy() #
clean_data.drop(outlier_idx.data == True)
返回未包含在轴
中的标签[False]答案 0 :(得分:1)
而不是删除,只选择那些应该保留的行:
In [83]: idx
Out[83]:
Date
1990-01-29 False
1990-01-30 True
1990-01-31 True
1990-01-02 False
1990-02-02 False
Name: Cond, dtype: bool
In [84]: df
Out[84]:
Price
Date
1990-01-29 11.11
1990-01-30 12.01
1990-01-31 3.65
1990-01-02 0.99
1990-02-02 99.99
正如@Sergey Bushmanov已在他的评论中回答:
In [85]: clean = df[~idx]
In [86]: clean
Out[86]:
Price
Date
1990-01-29 11.11
1990-01-02 0.99
1990-02-02 99.99
或者像这样:
In [87]: clean = df[idx == False]
In [88]: clean
Out[88]:
Price
Date
1990-01-29 11.11
1990-01-02 0.99
1990-02-02 99.99