【发布时间】:2023-03-11 15:46:01
【问题描述】:
我有一个数据集,其中包含一些我想删除的异常值。 我想去掉下图数据框中的0值:
df = pd.DataFrame({'Time': [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9], 'data': [1.1, 1.05, 1.01, 1.05, 0, 1.2, 1.1, 1.08, 1.07, 1.1]})
我可以这样做以删除低于某个阈值的值:
df.loc[df['data'] < 0.5, 'data'] = np.NaN
这给我一个没有“0”值的列表:
Time data
0 0.0 1.10
1 0.1 1.05
2 0.2 1.01
3 0.3 1.05
4 0.4 NaN
5 0.5 1.20
6 0.6 1.10
7 0.7 1.08
8 0.8 1.07
9 0.9 1.10
但是,我也对围绕无效值的数据持怀疑态度,并希望将值“0.2”时间单位从异常值中删除。像下面这样:
Time data
0 0.0 1.10
1 0.1 1.05
2 0.2 NaN
3 0.3 NaN
4 0.4 NaN
5 0.5 NaN
6 0.6 NaN
7 0.7 1.08
8 0.8 1.07
9 0.9 1.10
【问题讨论】: