【问题标题】:Outer product from list of vectors R向量列表 R 的外积
【发布时间】:2016-12-01 07:07:25
【问题描述】:

我有一个向量列表,我正在尝试使用自定义距离度量来计算它们之间的距离矩阵。但是我不确定最好的方法:

distance.function<-function(x,y){
    return(x %*% y)
}
m<-1:4
values<-list(m,m,m,m,m)

我想要的是返回类似的东西:

outer(values, values, FUN='distance.function')
      [,1] [,2] [,3] [,4]
[1,]   30   30   30   30
[2,]   30   30   30   30
[3,]   30   30   30   30
[4,]   30   30   30   30

我尝试过使用outer,但它似乎不喜欢输入是向量,我尝试过combn,但似乎无法将输出转换为所需的格式。理想情况下,我只对矩阵的上三角形进行了测试。

【问题讨论】:

    标签: r matrix syntax distance


    【解决方案1】:

    看来这其实只是使用Vectorize的问题:

    m<-1:4
    x<-list(m,m,m,m,m)
    mini.test<-function(x,y){
        dot.prod <- x %*% y
        return(dot.prod)
    }
    outer(x, x, Vectorize(mini.test))
    
         [,1] [,2] [,3] [,4] [,5]
    [1,]   30   30   30   30   30
    [2,]   30   30   30   30   30
    [3,]   30   30   30   30   30
    [4,]   30   30   30   30   30
    [5,]   30   30   30   30   30
    

    感谢链接 here 帮助解决此问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-17
      • 1970-01-01
      • 1970-01-01
      • 2021-10-11
      • 2016-05-09
      • 2021-06-30
      • 2015-05-05
      • 2021-11-24
      相关资源
      最近更新 更多