gpt4 book ai didi

matlab - 如何在 MATLAB 中显示结构数组的选定条目

转载 作者:太空宇宙 更新时间:2023-11-03 20:24:14 25 4
gpt4 key购买 nike

假设我们有一个结构数组。该结构包含字段:namepricecost

假设数组 A 的大小为 n x 1。如果我想显示第一个、第三个和第四个结构的名称,我可以使用命令:

A([1,3,4]).name

问题是它在屏幕上打印了以下内容:

ans = 

name_of_item_1

ans =

name_of_item_3

ans =

name_of_item

我怎样才能删除那些 ans = 东西?我试过:

disp(A([1,3,4]).name);

只是为了得到一个错误/警告。

最佳答案

通过执行 A([1,3,4]).name,您将返回 comma-separated list .这相当于在 MATLAB 命令提示符中键入以下内容:

>> A(1).name, A(3).name, A(4).name

这就是为什么您会看到 MATLAB 命令提示符给您 ans = ... 三次。

如果要一起显示所有字符串,请考虑使用 strjoin将所有名称连接在一起,我们可以用逗号分隔名称。为此,您必须将所有这些放在一个元胞数组中。我们称此元胞数组为 names。因此,如果我们这样做:

names = {A([1,3,4]).name};

这等同于:

names = {A(1).name, A(3).name, A(4).name};

这将创建一个 1 x 3 的名称元胞数组,我们可以使用这些名称将它们连接在一起,方法是用逗号和空格分隔它们:

names = {A([1,3,4]).name};
out = strjoin(names, ', ');

然后您可以显示最终字符串的样子:

disp(out);

关于matlab - 如何在 MATLAB 中显示结构数组的选定条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34365517/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com