首页 >后端开发 >Python教程 >如何有效地替换 Pandas DataFrame 中的 NaN 值?

如何有效地替换 Pandas DataFrame 中的 NaN 值?

Susan Sarandon
Susan Sarandon原创
2024-12-03 20:16:10317浏览

How can I effectively replace NaN values in Pandas DataFrames?

替换 Dataframe 列中的 NaN 值

在 Pandas 中使用 DataFrame 时,丢失或无效的数据可以用 NaN 值表示。为了确保数据质量并防止错误,通常需要用适当的占位符或插补来替换这些 NaN 值。

DataFrame.fillna() 方法

最直接的替换 NaN 值的方法是使用 fillna() 方法。它将一个值或字典作为参数,并用提供的值替换指定列或整个 DataFrame 中的所有 NaN 值

示例:

import pandas as pd

df = pd.DataFrame({
    "itm": [420, 421, 421, 421, 421, 485, 485, 485, 485, 489, 489],
    "Date": ["2012-09-30", "2012-09-09", "2012-09-16", "2012-09-23", "2012-09-30", 
             "2012-09-09", "2012-09-16", "2012-09-23", "2012-09-30", "2012-09-09", "2012-09-16"],
    "Amount": [65211, 29424, 29877, 30990, 61303, 71781, float("NaN"), 11072, 113702, 64731, float("NaN")]
})

df.fillna(0)

输出:

       itm       Date    Amount
0     420  2012-09-30    65211
1     421  2012-09-09    29424
2     421  2012-09-16    29877
3     421  2012-09-23    30990
4     421  2012-09-30    61303
5     485  2012-09-09    71781
6     485  2012-09-16      0.0
7     485  2012-09-23   11072.0
8     485  2012-09-30  113702.0
9     489  2012-09-09    64731
10    489  2012-09-16      0.0

其他方法:

虽然 fillna() 是最常见的是,还有其他几种方法可用于替换 NaN 值:

  • .replace():此方法可用于将 NaN 值替换为特定值或掩码。
  • .interpolate():此方法使用各种插值技术来估计缺失
  • .pivot_table():该方法可用于对数据进行分组和聚合,忽略缺失值。

结论:

替换 DataFrame 中的 NaN 值对于数据清理和操作至关重要。通过利用上述方法,您可以有效地处理丢失或无效的数据,确保数据分析的完整性和质量。

以上是如何有效地替换 Pandas DataFrame 中的 NaN 值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn