R fastLink 包将 m 和 u prob 插入 emlinkMARmov

问题描述

尝试使用 R fastLink 包并在 emlinkMARmov 函数中插入概率的起始值。

结果是运行emlinkMARmov时出错。特别是如果我运行该函数

  1. 1-4 个概率值,这是结果

p.gamma.k.m[[i]] : 下标越界

  1. 5 个或更多值,结果为

p.gamma.k.m[[i]] *vtmP* 中的错误:提供的元素多于 有替换

根据此处 https://github.com/tedenamorado/fastLink 的文档,我需要输入长度 = # of links 字段的向量。这意味着 5。所以不知道为什么该函数不能在 pgammakm 中使用 5 个值?

下面的代码..

library('RecordLinkage')
RLdata10000$trueid <- identity.RLdata10000
RLdata10000$id <- 1:nrow(RLdata10000)

library('fastLink')
library(tidyverse)

## Create Agreement Vectors
g1 <- gammaCKpar(RLdata10000$fname_c1,RLdata10000$fname_c1,cut.a = 0.94,cut.p = 0.88)
g2 <- gammaCKpar(RLdata10000$lname_c1,RLdata10000$lname_c1,cut.p = 0.88)
g3 <- gammaKpar(RLdata10000$by,RLdata10000$by)
g4 <- gammaKpar(RLdata10000$bm,RLdata10000$bm)
g5 <- gammaKpar(RLdata10000$bd,RLdata10000$bd)
nr <- nrow(RLdata10000)

## Count Patterns + EM
counts <- tableCounts(list(g1,g2,g3,g4,g5),nobs.a = nr,nobs.b = nr)
# Put in starting positions for m and u for features to influence outcome
pgammakm = c(1.331910971833257e-14,4.683960094033817e-03,4.112060625003156e-02,1.432229262705961e-02,4.692862863782486e-02)     #probability that conditional on being in the matched set,we observed a specific agreement
pgammaku = c(0.986035579798584805,0.973281071443571011,0.987948005162691989,0.916094176950708938,0.966858439069919084)    #probability that conditional on being in the unmatched set,we observed a specific agreement value for field k

resEM <- emlinkMARmov(counts,nobs.b = nr,p.gamma.k.m=pgammakm,p.gamma.k.u = pgammaku )

## Matches
matches <- matchesLink(list(g1,em = resEM,thresh = 0.98)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)