MATLAB 中的笛卡尔积 [英] Cartesian product in MATLAB

查看:39
本文介绍了MATLAB 中的笛卡尔积的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我遇到的问题的简化版本.假设我有一个向量

Here is the simplified version of the problem I have. Suppose I have a vector

p=[1 5 10] 

还有一个

q=[.75 .85 .95]

我想提出以下矩阵:

res=[1, .75;
     1, .85;
     1, .95;
     5, .75;
     5, .85;
     5, .95;
    10, .75;
    10, .85;
    10, .95]

这也称为笛卡尔积.我该怎么做?

This is also known as the Cartesian Product. How can I do that?

推荐答案

这是一种方法:

[X,Y] = meshgrid(p,q);
result = [X(:) Y(:)];

输出为:

result =

    1.0000    0.7500
    1.0000    0.8500
    1.0000    0.9500
    5.0000    0.7500
    5.0000    0.8500
    5.0000    0.9500
   10.0000    0.7500
   10.0000    0.8500
   10.0000    0.9500

这篇关于MATLAB 中的笛卡尔积的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆