How to separate the field from a structure in MATLAB?
15 ビュー (過去 30 日間)
古いコメントを表示
I have a structure which is attached with this file named as 'shape.mat'. The structure contains the following fields: Geometry Boundary X Y...etc Now i want to separate X and Y field from the structure and store it in a cell named x_constraint and y_constraint respectively. Can it be done?
2 件のコメント
Siva Priya Bollineni
2020 年 9 月 21 日
編集済み: Siva Priya Bollineni
2020 年 9 月 21 日
@Stephen Cobeldick, I have a matlab file in which i have a class with 4 properties out of which one is a structure with different fields in it. I need to call this matlab file from python through Matlab API engine.
1.Can you please let me know how to access those fields present in that structure of matlab file from python, (when runned the matlab file from python).
2. Also, is there anyway to access the uint64 type data of matlab in to python.
Please someone let me know about this, Thanks in advance.
採用された回答
michio
2016 年 10 月 4 日
編集済み: michio
2016 年 10 月 4 日
Your structure seems to be a nonscalar structure, so try using curly bracket:
load('shape.mat');
x_constraint = {S.X};
y_constraint = {S.Y};
4 件のコメント
michio
2016 年 10 月 4 日
One way is to use arrayfun, which applies function to each element of array, in this case, function @(struct) [struct.X; struct.Y] is applied to the each element of a structure S.
load('shape.mat');
AllCell = arrayfun(@(struct) [struct.X; struct.Y], S, 'UniformOutput',false);
その他の回答 (2 件)
Guillaume
2016 年 10 月 3 日
Well, unless I completely misunderstood your question:
x_constraint = yourstructure.X;
y_constraint = yourstructure.Y;
However, there is no benefit to that. Why not use yourstructure.X whenever you want x_constraint and not bother creating x_constraint in the first place?
Dimas Rizky
2020 年 11 月 29 日
Just type :
x_constraint = shape.X(:,1);
y_constraint = shape.Y(:;1);
I hope it's working for you..
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Structures についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!