Python Pandas - 用中位数填充缺失的列值
中位数将数据的上半部分与下半部分分开。使用该fillna()方法并设置中位数以使用中位数填充缺失的列。首先,让我们使用各自的别名导入所需的库 -
import pandas as pdimport 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 = 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 列
# 用它所在列的中位数替换 NaNs
dataFrame.fillna(dataFrame['Units'].median(), inplace = True)
print"\nUpdated Dataframe after filling NaN values with median...\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 Pandas - 用中位数填充缺失的列值 的全部内容, 来源链接: utcz.com/z/362300.html