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

