Python Pandas - 使用模式填充缺失的列值
pythonserver side programmingprogramming更新于 2025/11/9 7:08:17
模式是一组值中出现次数最多的值。使用 fillna() 方法并设置模式以使用模式填充缺失的列。首先,让我们导入所需的库及其各自的别名 −
import pandas as pd import numpy as np
创建一个包含 2 列的 DataFrame。我们已经使用 Numpy np.NaN 设置了 NaN 值 −
dataFrame = pd.DataFrame(
{
&"Car": ['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang'],"Units": [100, 150, np.NaN, 80, np.NaN, np.NaN]
}
)
查找具有 NaN 的列值的模式,即在此处获取 Units 列。使用 Units 列上的 mode() 将 NaN 替换为其所在列的模式 −
dataFrame.fillna(dataFrame['Units'].mode()[0], inplace = True)
示例
以下是完整代码 −
import pandas as pd
import numpy as np
# 创建 DataFrame
dataFrame = pd.DataFrame(
{
&"Car": ['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang'],"Units": [100, 150, np.NaN, 80, np.NaN, np.NaN]
}
)
print"DataFrame ...\n",dataFrame
# 查找列值的模式,NaN 即这里的 Units 列
# 将 NaN 替换为其所在列的模式
dataFrame.fillna(dataFrame['Units'].mode()[0], inplace = True)
print"\n用模式填充 NaN 值后更新了数据框......\n",dataFrame
输出
这将产生以下输出 −
DataFrame ... Car Units 0 BMW 100.0 1 Lexus 150.0 2 Lexus NaN 3 Mustang 80.0 4 Bentley NaN 5 Mustang NaN 用模式填充 NaN 值后更新了数据框...... Car Units 0 BMW 100.0 1 Lexus 150.0 2 Lexus 80.0 3 Mustang 80.0 4 Bentley 80.0 5 Mustang 80.0
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

