菜单
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Pandas - 修复错误数据


错误数据

"错误数据" 不一定就是“空单元格”或“格式错误”,它也可能就是数据本身错了,例如,有人输入了“1.99”而不是“199”。

有时,通过查看数据集,你就能发现错误数据,因为你对它应该是什么样子有所预期。

如果我们查看数据集,你会发现第 7 行的持续时间是 450,但其他所有行的持续时间都在 30 到 60 之间。

这不一定就是错误的,但考虑到这是一个关于某人锻炼课程的数据集,我们得出结论,这个人并没有锻炼 450 分钟。

      Duration          Date  Pulse  Maxpulse  Calories
  0         60  '2020/12/01'    110       130     409.1
  1         60  '2020/12/02'    117       145     479.0
  2         60  '2020/12/03'    103       135     340.0
  3         45  '2020/12/04'    109       175     282.4
  4         45  '2020/12/05'    117       148     406.0
  5         60  '2020/12/06'    102       127     300.0
  6         60  '2020/12/07'    110       136     374.0
  7        450  '2020/12/08'    104       134     253.3
  8         30  '2020/12/09'    109       133     195.1
  9         60  '2020/12/10'     98       124     269.0
  10        60  '2020/12/11'    103       147     329.3
  11        60  '2020/12/12'    100       120     250.7
  12        60  '2020/12/12'    100       120     250.7
  13        60  '2020/12/13'    106       128     345.3
  14        60  '2020/12/14'    104       132     379.3
  15        60  '2020/12/15'     98       123     275.0
  16        60  '2020/12/16'     98       120     215.2
  17        60  '2020/12/17'    100       120     300.0
  18        45  '2020/12/18'     90       112       NaN
  19        60  '2020/12/19'    103       123     323.0
  20        45  '2020/12/20'     97       125     243.0
  21        60  '2020/12/21'    108       131     364.2
  22        45           NaN    100       119     282.0
  23        60  '2020/12/23'    130       101     300.0
  24        45  '2020/12/24'    105       132     246.0
  25        60  '2020/12/25'    102       126     334.5
  26        60      20201226    100       120     250.0
  27        60  '2020/12/27'     92       118     241.0
  28        60  '2020/12/28'    103       132       NaN
  29        60  '2020/12/29'    100       132     280.0
  30        60  '2020/12/30'    102       129     380.3
  31        60  '2020/12/31'     92       115     243.0

我们如何修复错误值,比如第 7 行的“Duration”?


w3schools CERTIFIED . 2022

获得认证!

完成 Pandas 模块,完成练习,参加考试,您将获得 w3schools 认证!

$10 注册

替换值

修复错误值的一种方法是用其他值来替换它们。

在我们的例子中,这很可能是一个输入错误,该值应该是“45”而不是“450”,我们可以直接在第 7 行插入“45”。

示例

将第 7 行的“Duration”设置为 45

df.loc[7, 'Duration'] = 45
自己动手试一试 »

对于小型数据集,你可能可以逐个替换错误数据,但对于大型数据集则不行。

对于大型数据集,你可以创建一些规则来替换错误数据,例如,为合法值设置一些边界,然后替换任何超出边界的值。

示例

循环遍历“Duration”列中的所有值。

如果值大于 120,则将其设置为 120

for x in df.index
  if df.loc[x, "Duration"] > 120
    df.loc[x, "Duration"] = 120
自己动手试一试 »

删除行

处理错误数据的另一种方法是删除包含错误数据的行。

这样你就无需弄清楚用什么来替换它们,而且很可能你不需要它们来做分析。

示例

删除“Duration”大于 120 的行

for x in df.index
  if df.loc[x, "Duration"] > 120
    df.drop(x, inplace = True)
自己动手试一试 »


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持