Error: Dot indexing is not supported for variables of this type.

2 views (last 30 days)
Dear community, when I add a row to a matrix in structure parameter,
a = ones(1,5);
parameter.A = [parameter.A; a];
the following error occurs: Dot indexing is not supported for variables of this type. I don't know how to modify it.
  2 Comments
yutong wu
yutong wu on 22 May 2019
Sorry, maybe I wasn't being clear. "parameter.A" initial value is []. On each loop iteration, "a" will be changed and I want to record all "a" in the structure matrix "parameter.A".

Sign in to comment.

Accepted Answer

per isakson
per isakson on 22 May 2019
Edited: per isakson on 22 May 2019
I cannot reproduce your problem. This works
%%
parameter.A = [];
a = ones(1,5);
parameter.A = [parameter.A; a];
b = 2*ones(1,5);
parameter.A = [parameter.A; b]
and outputs
>> parameter =
struct with fields:
A: [2×5 double]
>> parameter.A
ans =
1 1 1 1 1
2 2 2 2 2
>>
  1 Comment
yutong wu
yutong wu on 22 May 2019
Thank you, the expression is okay. I find the reason. I set the structure parameter as [], which lead to the error.

Sign in to comment.

More Answers (1)

Yuichi Mimura
Yuichi Mimura on 22 May 2019
Edited: per isakson on 22 May 2019
If you simply wish to add row "a" to a part of Structure Array "parameter", the below code will realize this.
a = ones(1,5);
parameter.A = a;
>> parameter.A
ans =
1 1 1 1 1
Can this be your solution?

Tags

No tags entered yet.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!