簡體   English   中英

如何將均值推算到列中的特定觀察值中?

[英]How to impute means into specific observations in a column?

目前,我有一個任務,包括一個數據表,該數據表包含有關在不同情況下測量的動物物種的觀察信息。 在我的數據的“重量”列中,我應該使用一些缺失值替換為動物來源物種的平均重量。 因此,我希望在沒有記錄動物體重的兩種情況下,“ albigula”物種的平均體重為148,以代替NA,以便獲得完整的數據集。 然后,我需要對另外10個左右的物種重復此過程。

除了以下幾點,我想不出一種方法:

    albigula <- filter(surveys_combined_year, surveys_combined_year$species == "albigula")
    albigula$weight %>% mean(na.rm= TRUE)

但是,這顯然是行不通的,因為我無法在“ surveys_combined_year $ weight”中將平均值推算為其特定位置。

抱歉,可能是超級初學者的問題,我搜索了我們在課堂上獲得的所有資源,但我似乎仍然無法理解我所缺少的內容。

請幫幫我!

我們可以做一個group_by replace 通過“物種”,分組replaceNAreplace_na )元素中“重量”由mean “重量”的

library(dplyr)
library(tidyr)
out <- surveys_combined_year %>%
         group_by(species) %>%
         mutate(weight = replace_na(weight, mean(weight, na.rm = TRUE)))

編輯-將replacereplace_na (來自@BenBolker的評論)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM