我有下面的数据框。
# Create a sample DataFrame
df = pd.DataFrame({'Age': [np.nan, 31, 29, 43, np.nan],
'Weight': [np.nan, 100, 60, 75, np.nan],
'Height': [1.65, 1.64, 1.75, 1.70, 1.68],
'BMI': [19, 15, 10, 25, 30]})
和要替换其缺少值的列:case_columns = ['Age', 'Weight']
我想要一个算法-在python-这将取代相同的值与行的缺失值:缺失值所在行与其他行之间差值的最小和。
在我的示例中,在第0行中,年龄应该是31岁,体重应该是100岁,与第1行具有最小差值((1.65-164)+(19-15))。在第4行中,年龄应该是43岁,体重应该是75岁。
在Python中如何实现这一点?
1条答案
按热度按时间fnx2tebb1#
您可以尝试创建一个函数并使用df.apply()