У меня есть набор данных, содержащий некоторые выбросы, которые я хотел бы удалить. Я хочу удалить значение 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