在复杂的调查中通过堪培拉距离函数

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

我正在尝试使用 R 包 Survey 和 srvyr 在复杂的调查设计中应用堪培拉距离函数。

示例:

dstrata %>%
  group_by(awards) %>%
  summarise(api00 = survey_mean(api00),
            api99=survey_mean(api99))

我想应用canb.dist函数来测量apo00和api99之间的距离

    canb.dist <- function(x, j){ sum((abs(x-j))/(abs(x)+abs(j)))}
    
    canberra.index= function(x,j){
    
    Canbdist=sum((abs(x-j))/(abs(x)+abs(j)))
    
    domain=numeric(length(x))

return (CD= Canbdist/domain)

}
r distance survey
1个回答
0
投票

我不知道是否有人定义了堪培拉距离的加权版本,但它是

abs(x-y)/(abs(x)+abs(y)
的总(或平均值),所以

  1. 定义变量
    z=abs(x-y)/(abs(x)+abs(y))
  2. survey_mean(z)
    survey_total(z)
© www.soinside.com 2019 - 2024. All rights reserved.