首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从两个向量的外积创建矩阵的矢量化方法

从两个向量的外积创建矩阵的矢量化方法
EN

Stack Overflow用户
提问于 2011-12-22 03:42:59
回答 2查看 275关注 0票数 2

Incanter的新手,他想知道基于两个列表的成对乘积的结果创建矩阵的矢量化解决方案是什么样子。更清楚地说,我有两个我创建的列表

代码语言:javascript
复制
(def x (pdf-poisson (range 4) :lambda 2.2))
(def y (pdf-poisson (range 4) :lambda 1.5)).

我现在想要一个4x4矩阵M,使得M(1,1)是x(1)和y(1)的乘积,M(1,2)是x(1)和y(2)的乘积,等等。

在Octave中使用外部产品很容易,所以希望Incanter也支持这一点。

我可以通过跨向量映射函数来轻松地手工编码,但如果可能的话,我想要一种惯用的或向量化的方法。

谢谢,JT

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-24 03:58:10

刚刚在Incanter中找到了kronecker函数。向量的Kronecker积就是我需要的。所以

代码语言:javascript
复制
(kronecker y-poisson x-poisson)
票数 2
EN

Stack Overflow用户

发布于 2011-12-22 09:13:03

以这个结尾:-

代码语言:javascript
复制
(def x-poisson (pdf-poisson (range 4) :lambda 2.2))
(def y-poisson (pdf-poisson (range 4) :lambda 1.5))

(defn- poisson-mapper
  "Takes a list of values from the PDF, and returns a closure that will multiply each
  value in the list by p. Used to create the probability matrix"
  [p_list]
  (fn [p] (map #(* p %) p_list))) 

(def x-mapper (poisson-mapper x-poisson))

(def probabiliy-matix (matrix (map #(x-mapper %) y-poisson)))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8595377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档