按班级平均数进行插补

问题描述 投票:0回答:1

我有一个包含多个变量的数据集,其中有很多丢失的数据。我想考虑一个具有 3 个类别作为其级别的变量,按类别进行插补。我希望能够编写一个代码,自动对所有变量进行此插补,而不必逐一手动完成。

medie_per_classe <- aggregate(. ~ Company_category, data = df, FUN = mean, na.rm = TRUE)

我尝试使用此代码,但我只获得缺失值 - 该代码不计算平均值

r dataframe mean imputation
1个回答
0
投票

使用

dplyr
,这将为
NA
 中的所有数字列填充按 
Company_category
 分组的平均值的所有 
your_data

library(dplyr)

your_data |>
  mutate(across(
    where(is.numeric),
    \(x) coalesce(x, mean(x, na.rm = TRUE)),
    .by = Company_category
  ))
© www.soinside.com 2019 - 2024. All rights reserved.