小编Zac*_*ach的帖子

如何使用python在另一个图像中查找图像

我正在尝试使用python来确定一个(小)图像是否在另一个(大)图像中.

在我完全走错路之前的任何建议?

/编辑:好的,一些想法:我正在使用PIL,我正在将每个图像转换为'P'模式,因此我可以将每个像素作为整数进行比较.我正在尝试实现类似Boyer-Moore字符串搜索或Knuth-Morris-Pratt算法的东西,但是在2维中.

也许这会有所帮助:而不是搜索ABC in XXXABCXXX(answer = 4)我们正在寻找

ABC    
DEF    
GHI    
Run Code Online (Sandbox Code Playgroud)

XXXXX        
XABCX        
XDEFX       
XGHIX    
XXXXX  
Run Code Online (Sandbox Code Playgroud)

(回答=(2,2))

python image

21
推荐指数
2
解决办法
1万
查看次数

如何从Windows上的源tarball安装R包?

R 的预测包已更新至2.12版,但目前CRAN上只有2.11的Windows二进制文件.

如何从Windows上的源代码安装R软件包?

r

21
推荐指数
5
解决办法
5万
查看次数

将月份缩写转换为数字月份,在R中

我正在尝试编写一个函数来将3个字母的月份缩写转换为R中的数值.

这就是我所拥有的,我想知道是否有更好的方法来做到这一点:

numMonth <- function(x) {
    months <- list(jan=1,feb=2,mar=3,apr=4,may=5,jun=6,jul=7,aug=8,sep=9,oct=10,nov=11,dec=12)
    x <- tolower(x)
    sapply(x,function(x) months[[x]])
}

numMonth(c('JAN','DEC'))
Run Code Online (Sandbox Code Playgroud)

datetime r

20
推荐指数
2
解决办法
1万
查看次数

计算R中2个日期之间的工作日数

我正在尝试编写一个R函数来计算两个日期之间的工作日数.例如,Nweekdays('01/30/2011','02/04/2011')等于5.

此问题类似.谢谢!

/编辑:@J.温彻斯特的答案很棒,但我想知道是否有人能想出一种方法来对此进行矢量化,以便它可以在两列日期上工作.谢谢!/编辑2:再次感谢!

datetime r

18
推荐指数
3
解决办法
2万
查看次数

从R发送短信

我知道您可以使用sendMail从R发送电子邮件,您可以使用twitteR发送推文.有没有办法从R脚本发送文本消息?

sms r

18
推荐指数
2
解决办法
5620
查看次数

滚动连接:向前和向后滚动

data.table很棒,因为我可以做滚动连接,甚至可以在组内滚动连接!

library(data.table)
set.seed(42)
metrics <- data.frame(
  ID=c(rep(1, 10), rep(2,5), rep(3,5)),
  Time=c(1:10, 4:8, 8:12),
  val1=runif(20),
  val2=runif(20),
  val3=runif(20),
  val4=runif(20)
  )
metrics <- data.table(metrics[sample(1:nrow(metrics), 15),], key=c('ID', 'Time'))
calendar <- data.table(expand.grid(ID=1:3, Time=1:12), key=c('ID', 'Time'))

metrics[calendar,roll=TRUE]
Run Code Online (Sandbox Code Playgroud)

但是,这对我来说不够好.这data.table还有NAs:

> metrics[calendar,roll=TRUE]
    ID Time      val1      val2      val3        val4
 1:  1    1 0.9148060 0.9040314 0.3795592 0.675607275
 2:  1    2 0.9370754 0.1387102 0.4357716 0.982817198
 3:  1    3 0.9370754 0.1387102 0.4357716 0.982817198
 4:  1    4 0.8304476 0.9466682 0.9735399 0.566488424
 5:  1    5 0.8304476 0.9466682 0.9735399 0.566488424 …
Run Code Online (Sandbox Code Playgroud)

r data.table

16
推荐指数
2
解决办法
2256
查看次数

doRedis如何运作?

我一直在玩redis数据库R接口,以及foreachdoRedis并行后端.我有几个问题,帮助我更好地应用此工具:

  1. doMC,doSMP,doSnow等似乎都可以通过在同一台计算机上调用工作进程,从列表和要应用的函数传递它们,然后收集结果来工作.在doMC的情况下,工作人员共享内存.但是,对于数据库如何提供相同的功能,我有点困惑.
  2. 当我将另一台从属计算机添加到doRedis作业队列时(如本视频所示),整个doredis数据库是否被发送到从属计算机?或者每个奴隶只是在特定时刻所需的数据(即列表的一个元素和要应用的函数).
  3. 如何将其他数据和函数显式传递给doRedis作业队列,每个从站都需要执行它的计算?
  4. 使用doRedis和foreach时,是否还有其他"陷阱"可能不适用于其他并行后端?

我知道这是很多问题,但我一直遇到这样一种情况,即我对并行处理如何工作的有限理解阻碍了我实现它的能力.例如,我最近尝试在大型数据库上并行化计算,并发现自己将整个数据库传递到我的集群上的每个节点,这一操作完全破坏了我从并行化中获得的任何优势.

谢谢!

parallel-processing r cluster-computing redis r-doredis

15
推荐指数
1
解决办法
1569
查看次数

Excel VBA函数将数组打印到工作簿

我编写了一个采用二维数组的宏,并将其"打印"到excel工作簿中的等效单元格.

有没有更优雅的方式来做到这一点?

Sub PrintArray(Data, SheetName, StartRow, StartCol)

    Dim Row As Integer
    Dim Col As Integer

    Row = StartRow

    For i = LBound(Data, 1) To UBound(Data, 1)
        Col = StartCol
        For j = LBound(Data, 2) To UBound(Data, 2)
            Sheets(SheetName).Cells(Row, Col).Value = Data(i, j)
            Col = Col + 1
        Next j
            Row = Row + 1
    Next i

End Sub


Sub Test()

    Dim MyArray(1 To 3, 1 To 3)
    MyArray(1, 1) = 24
    MyArray(1, 2) = 21
    MyArray(1, 3) = 253674
    MyArray(2, …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

15
推荐指数
1
解决办法
14万
查看次数

在插入符号中安装无拦截模型

在R中,我指定一个没有拦截的模型如下:

data(iris)
lmFit <- lm(Sepal.Length ~ 0 + Petal.Length + Petal.Width, data=iris)
> round(coef(lmFit),2)
Petal.Length  Petal.Width 
        2.86        -4.48 
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用插入符号匹配相同的模型,则生成的模型包含截取:

library(caret)
caret_lmFit <- train(Sepal.Length~0+Petal.Length+Petal.Width, data=iris, "lm")
> round(coef(caret_lmFit$finalModel),2)
 (Intercept) Petal.Length  Petal.Width 
        4.19         0.54        -0.32 
Run Code Online (Sandbox Code Playgroud)

如何caret::train排除拦截术语?

regression r intercept r-caret

14
推荐指数
2
解决办法
2226
查看次数

在R中真的快速字ngram矢量化

编辑:新包text2vec非常好,并且很好地解决了这个问题(和许多其他问题).

关于github 插图的CRAN text2vec上的text2vec,用于说明ngram标记化

我在R中有一个非常大的文本数据集,我已将其作为字符向量导入:

#Takes about 15 seconds
system.time({
  set.seed(1)
  samplefun <- function(n, x, collapse){
    paste(sample(x, n, replace=TRUE), collapse=collapse)
  }
  words <- sapply(rpois(10000, 3) + 1, samplefun, letters, '')
  sents1 <- sapply(rpois(1000000, 5) + 1, samplefun, words, ' ')
})
Run Code Online (Sandbox Code Playgroud)

我可以将此字符数据转换为词袋表示,如下所示:

library(stringi)
library(Matrix)
tokens <- stri_split_fixed(sents1, ' ')
token_vector <- unlist(tokens)
bagofwords <- unique(token_vector)
n.ids <- sapply(tokens, length)
i <- rep(seq_along(n.ids), n.ids)
j <- match(token_vector, bagofwords)
M <- sparseMatrix(i=i, j=j, x=1L)
colnames(M) <- bagofwords
Run Code Online (Sandbox Code Playgroud)

所以R可以在大约3秒钟内将1,000,000,000个短句矢量化为一个单词表示形式(不错!):

> M[1:3, …
Run Code Online (Sandbox Code Playgroud)

r vectorization text-mining n-gram text2vec

14
推荐指数
1
解决办法
3740
查看次数