【问题标题】:How to calculate a median and mean of 95 percentile in R [closed]如何计算R中95个百分点的中位数和平均值[关闭]
【发布时间】:2022-01-14 16:15:45
【问题描述】:

我的数据集包含不同物种 (aapl2) 的多个观测值(平均强度 gfp)。每个物种都有若干个观测值。

我已经将观察结果按物种分组并计算了 95%:

data2 = aggregate(data$"Mean Intensity gfp" ~ data$aapl2, FUN = quantile, probs = c(0.95)).

但是现在,我遇到了问题,我不知道如何解决。 我需要计算 计算出的 95 个百分位数的中位数和平均值,但我真的不知道该怎么做。

有人可以帮帮我吗?

非常感谢你

enter image description here

【问题讨论】:

    标签: r mean median


    【解决方案1】:

    使用 iris... 获取值低于 95%(其物种)的那些的平均值/中位数

    library(data.table)
    data.table(iris)[, keep := Petal.Length < quantile(Petal.Length, 0.95), 
                       by = Species][
                       keep==TRUE, 
                       .(mean(Petal.Length), median(Petal.Length)), 
                       by = Species]
    

    并使用 dplyr

    library(dplyr)
    iris %>% 
      group_by(Species) %>%
      filter(Petal.Length < quantile(Petal.Length, 0.95)) %>%
      summarize("mean"=mean(Petal.Length), 
                "med"=median(Petal.Length))
    

    【讨论】:

    • 我能否以某种方式合并计算 95 个百分位数的中位数?因为 tapply 函数给出了一个 95 percentil 的表格,但不是每个物种的 95 percentil 的中位数。
    • 你的意思是你想要落在中间 95%/第一个/95% 范围内的个体的中位数?或者您想要 95%iles 估计值的平均值/中位数
    • 是的,我需要每组前 95% 观察值的中位数和平均值。
    • 好的,请看编辑 - 如果答案让我知道,我会编辑答案以清理它
    • 很抱歉,它仍然无法正常工作。我有一条错误消息:[.data.table(data.table(data), , :=(keep, data$Mean Intensity gfp
    猜你喜欢
    • 2021-03-03
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 2022-12-13
    • 2021-02-07
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    相关资源
    最近更新 更多