3

我正在尝试使用 R 包 RecordLinkage,除了包文档之外,我还使用包作者的两篇 文章作为使用指南。

我正在使用 2 个大型数据集(100k+ 行),我希望将它们链接起来,因此我正在使用围绕 S4 class 构建的那些包元素RLBigDataLinkage

我首先在 R 中运行以下行:

>library('RecordLinkage')
>data1 <- as.data.frame(#source)
>data2 <- as.data.frame(#source)
>rpairs <- RLBigDataLinkage(data1, data2, strcmp = 2:8, exclude = 9:10)

这工作正常(虽然需要一些时间),并编写必要的 .ff 文件来处理大型数据集。

如果我再尝试:

>rpairs <- epiWeights(rpairs)

或者:

>rpairs <- epiWeights(rpairs, e = 0.01, f = getFrequencies(rpairs))

然后当我运行时:

>summary(rpairs)

我收到错误消息:

Error in dbGetQuery(object@con, "select count(*) from data1") : 
    error in evaluating the argument 'conn' in selecting a method for function 'dbGetQuery': Error: no slot of name "con" for this object of class "RLBigDataLinkage"

另一方面,如果我运行:

>result <- epiClassify(rpairs, 0.5)
>getTable(result)

我收到错误消息:

Error in table.ff(object@data@pairs$is_match, object@prediction, useNA = "ifany") : 
     Only vmodes integer currently allowed - are you sure ... contains only factors or integers?

我显然遗漏了一些关于如何处理这些对象的内容。有没有人对这个包有任何经验看到我的错误?非常感谢。

4

1 回答 1

0

当 'rpairs' 的类型是 'RLBigDataLinkage' 使用print(rpairs)时,你会得到 rpairs 的摘要。

于 2017-03-10T11:23:15.593 回答