📜  Python| Pandas DataFrame.fillna() 替换数据框中的 Null 值

📅  最后修改于: 2022-05-13 01:54:22.214000             🧑  作者: Mango

Python| Pandas DataFrame.fillna() 替换数据框中的 Null 值

Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas就是其中之一,它使导入和分析数据变得更加容易。

有时 csv 文件有空值,稍后在数据框中显示为NaN 。就像 pandas dropna()方法管理和删除数据框中的 Null 值一样, fillna()管理并让用户用他们自己的一些值替换 NaN 值。

句法:

参数:

有关代码中使用的 CSV 文件的链接,请单击此处。

示例 #1:用静态值替换 NaN 值。

更换前:

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
nba

输出:

更换后:
在以下示例中,College 列中的所有空值都已替换为“No College”字符串。首先,从 CSV 导入数据框,然后选择 College 列并对其使用fillna()方法。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
# replacing na values in college with No college
nba["College"].fillna("No College", inplace = True)
  
nba

输出:

示例 #2:使用方法参数

在以下示例中,method 设置为ffill ,因此同一列中的值将替换空值。在这种情况下,乔治亚州立大学替换了第 4 行和第 5 行的大学列中的空值。
同样,也可以使用 bfill、backfill 和 pad 方法。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
# replacing na values in college with No college
nba["College"].fillna( method ='ffill', inplace = True)
  
nba

输出:

示例 #3:使用限制

在此示例中,在fillna()方法中设置了 1 的限制,以检查函数是否在成功替换 NaN 值后停止替换。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
# replacing na values in college with No college
nba["College"].fillna( method ='ffill', limit = 1, inplace = True)
  
nba

输出:
如输出所示,第 4 行的大学列已替换,但第 5 列未替换,因为限制设置为 1。