python - 从不符合序列的熊猫数据框中删除特定值
问题描述
我有一个具有时间序列列的数据框:它们遵循特定的序列,除了少数垃圾值我希望根据时间列删除行。正如所见,1276.400 不适合序列,因此需要删除整行。我知道如何根据条件删除熊猫行,但无法为这个特定问题提出解决方案
.......
583.19732
583.397583
583.5975952
1276.400146
583.7976074
583.9976196
584.1975708
584.396123
584.597834
........
解决方案
您将需要选择一些逻辑来确定您认为的异常值。我们对此无能为力。您最了解您的数据。
一种选择是使用pd.Series.quantile
. 这使您可以灵活地定义误差范围。另一方面,它并不专门查看相邻值。
df_filtered = df[df['col'] < df['col'].quantile(0.90)]
print(df_filtered)
col
0 583.197320
1 583.397583
2 583.597595
4 583.797607
5 583.997620
6 584.197571
7 584.396123
8 584.597834
推荐阅读
- flutter - 如何使用 mapEventToState 更改状态?
- http - 当会话过期时,长时间运行的请求会发生什么?
- github-actions - 在 GitHubActions 中设置 yml 文件时出错
- python - 如何使用 python 绘制这些数据?
- linux - Oracle Linux Server 7.9 yum install docker-ce-20.10.5 时如何解决依赖问题?
- typescript - 如何在 TypeScript 中限制为只有 2 个数字索引签名类
- vue.js - 如何将选定的选项转移到 vue 应用程序中的另一个页面?
- sql - 将 NOT in 转换为 LEFT join 会给出不正确的结果
- linux - 如何在 linux 的 oc 调试模式下动态输入命令
- powershell - 如何在 Powershell 中为 DevOps 使用服务主体身份验证(承载令牌)而不被要求登录?