首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Matlab转置表向量

Matlab转置表向量
EN

Stack Overflow用户
提问于 2014-07-25 02:30:23
回答 2查看 6.7K关注 0票数 6

这似乎是一个令人尴尬的简单问题,但我如何转换Matlab表向量呢?

为了简单地将列向量aTable转换为行向量,我尝试了标准语法:

代码语言:javascript
运行
复制
aTableT = aTable.';

aTableT = reshape(aTable, 1, height(aTable));

代码语言:javascript
运行
复制
aTableT = rot90(aTable);

根据Mathworks,最后一个应该适用于表数组,请参见这里。但是,我得到了以下错误代码:

使用table/permute (第396行)未定义函数“permute”来输入类型为“table”的参数时出错。 rot90中的错误(第29行)B=置换(B,2 1 3:ndims(A));

注:fliplr也没用。很确定我已经报道过明显的角度了-有什么想法吗?谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-25 04:09:40

尝试将表转换为数组,然后将其转换为表。换句话说,尝试这样做:

代码语言:javascript
运行
复制
aTableArray = table2array(aTable);
aTableT = array2table(aTableArray.');

我也阅读了rot90的文档,它说rot90绝对应该适用于表,并且我得到了与您相同的错误。因此,由于transposing显然适用于数组/矩阵,因此让我们通过转换到矩阵、转换它,然后将其转换回表来快速解决问题。这对我有用!

票数 3
EN

Stack Overflow用户

发布于 2016-01-26 21:14:31

我用一些额外的方法扩展了table()类,并修复了https://github.com/okomarov/tableutils中存在的一些问题。

针对这个问题,我定义了类似于矩阵的表的转置,即如果表每个单元格有一个值,并且所有变量(列)都属于同一个类,那么您可以使用my包转置表。

举个例子:

代码语言:javascript
运行
复制
t = array2table(magic(4))
t = 
    Var1    Var2    Var3    Var4
    ____    ____    ____    ____
    16       2       3      13  
     5      11      10       8  
     9       7       6      12  
     4      14      15       1  
>> t'
ans = 
            Row1    Row2    Row3    Row4
            ____    ____    ____    ____
    Var1    16       5       9       4  
    Var2     2      11       7      14  
    Var3     3      10       6      15  
    Var4    13       8      12       1  
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24947126

复制
相关文章

相似问题

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