常规矩阵函数在ff中

时间:2015-06-11 20:12:14

标签: arrays r matrix bigdata ff

我是处理R中的大矩阵的新手。我正在尝试用new Handler().postDelayed(new Runnable() { @Override public void run() { dialog.incrementProgress(50); } }, 200); 学习。 我可以创建大型ff矩阵ffffsdist1,如下所示。

ffsdist2

我可以按如下方式创建ff矩阵

library(stringdist)
library(babynames)
library(ff)

d <- babynames
sdist1 <- stringdistmatrix(d$name[1:1000], d$name[1:2500], method="lv", useBytes = T)
sdist2 <- stringdistmatrix(d$name[1001:2000], d$name[1:2500], method="lv", useBytes = T)

我想在ffsdist1 <- ff(sdist1, dim=dim(sdist1)) ffsdist2 <- ff(sdist2, dim=dim(sdist2)) 矩阵中的sdist1sdist2复制以下操作。

1。 ff

rbind()

2。使用sdist <- rbind(sdist1, sdist2)

替换零件
[

3。使用sdist1[sdist1 > 0] <- Inf

提取零件
[

ind1 <- grepl("\\bA", d$name[1:1000])
ind2 <- grepl("a\\b", d$name[1:1000])
sdist[ind1 & ind2]

4。添加两个矩阵

sdist[,which(ind1)]

5。获得转置

sdistsum <- sdist1 + sdist2

这是正确的

tsdist1 <- t(sdist1)

6。使用tffsdist1 <- t(ffsdist1)

apply

如何使用apply(sdist, 1, function(x) paste(as.character(unlist(d$name[x <= 3])), collapse=", ")) 中的ff包进行此操作?

0 个答案:

没有答案