Matlab:有没有办法简化为大量变量创建数据集数组的命令?

发布于 2024-11-05 06:37:55 字数 284 浏览 2 评论 0原文

我想从这样的几个结构创建一个数据集数组:

data=dataset(S(1,1).gen_bin, S(1,2).gen_bin, S(1,3).gen_bin, S(1,4).gen_bin)

对于我当前的问题,我需要处理最多 30 个这样的变量。我的问题是是否有一种方法可以有效地缩短此命令,例如:

data=dataset(S(1,1).gen_bin, S(1,2).gen_bin, ... S(1,30).gen_bin)

I want to create a dataset array from several structures like that:

data=dataset(S(1,1).gen_bin, S(1,2).gen_bin, S(1,3).gen_bin, S(1,4).gen_bin)

For my current problem I need to address up to 30 variables like that. My question would be if there is a way to effectively shorten this command like:

data=dataset(S(1,1).gen_bin, S(1,2).gen_bin, ... S(1,30).gen_bin)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

美羊羊 2024-11-12 06:37:55

假设 dataset 是一个向其传递 30 条数据的函数,您可以 从结构体数组中返回数据 S,形式为逗号分隔列表 并将其直接传递给函数,如下所示

data = dataset(S(1,1:30).gen_bin);

S 是一个只有 30 个元素的结构体数组,那么你可以让它变得更简单:

data = dataset(S.gen_bin);

Assuming dataset is a function that you are passing your 30 pieces of data to, you can return data from the structure array S in the form of a comma-separated list and pass it directly to the function like so:

data = dataset(S(1,1:30).gen_bin);

If S is a structure array with only 30 elements, then you can make it even simpler:

data = dataset(S.gen_bin);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文