【问题标题】:2-column matrix from 2 vectors in MATLAB来自 MATLAB 中 2 个向量的 2 列矩阵
【发布时间】:2013-04-23 18:41:23
【问题描述】:

这感觉应该很简单。

我正在构建一个最小距离分类器,我想将 feature1 和 feature2 放入同一个矩阵中,这样我就可以调用它们并得到这样的答案。

featureVector(1,:) = 所有feature1

featureVector(2,:) = 所有feature2

我正在循环并希望在循环运行时将这些值放入featureVector

我是 MATLAB 的新手,所以我不知道如何用语言表达。希望这有足够的意义。

谢谢大家。

【问题讨论】:

    标签: matlab vector matrix


    【解决方案1】:

    如果您的feature1 是水平向量,则执行以下操作:

    featureVector = [ feature1 ; feature2 ]
    

    否则(如果是垂直的),执行:

    featureVector = [ feature1 , feature2 ]
    

    如果您不知道它的方向,您可以随时发送reshape

    feature1 = reshape(feature1, 1, numel(feature1))
    

    ...什么会使feature1 水平,或者:

    feature1 = reshape(feature1, numel(feature1), 1)
    

    ...什么会使feature1 垂直。

    reshape 这样使用会从 any 向量/矩阵生成水平/垂直向量,并从原始源逐一获取特定值。

    编辑:证明它有效:

    >> a = [1 ; 2 ; 3 ; 4 ; 5];
    >> b = [6 ; 7 ; 8 ; 9 ; 10];
    >> ab = [a, b]
    
    ab =
    
         1     6
         2     7
         3     8
         4     9
         5    10
    
    >> ab(2,:)
    
    ans =
    
         2     7
    

    编辑:如果您的feature1feature2 是标量,并且您想在每次迭代中将它们一个接一个地添加到featureVector,那么请执行以下操作:

    featureVector = []
    
    for i = 1:...
        feature1 = ...;
        feature2 = ...;
        featureVector = [featureVector; [feature1, feature2]];
    end
    

    【讨论】:

    • 那是我最初的尝试。当我在那里执行第一个选项时,它只保留 feature1 和 feature2 的最后两个值。我需要它来保留它们。它在循环之后输出一个 2x1 矩阵,它应该是 5x1。
    • 比率=h1_max/h2_max;共振峰3 = formfreq(1);共振峰4 = formfreq(2); formDistance = 共振峰4 - 共振峰3; featureVector1 = [ratio, formDistance];
    • 将最后一行更改为:featureVector1 = [reshape(ratio, numel(ratio), 1), reshape(formDistance, numel(formDistance), 1)];,正如我在开头所建议的那样。
    • 现在我得到一个 1x2 矩阵而不是 2x1。我复制并粘贴它。也许这是在搞砸之后的另一条线?我有 featureVector1 = [];在循环开始之前启动。
    • 我相信它是对的,我只是还没有得到它。我会接受的。
    【解决方案2】:

    你有没有想过使用这个?

    results = [values1,values2];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-14
      • 2015-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多