Dot indexing not supported
12 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I have the code:
x.y{2} = b
x is a 10by200 matrix and y is a row vector (1by200) and b is also a row vector (1by200) which has already been extracted.i want want to extract the columns or variables in y from which b corresponds to. when I run the code above Matlab says ‘dot indexing not supported for variables of this type’
Any ideas?
Thank you!
1 Kommentar
JESUS DAVID ARIZA ROYETH
am 10 Nov. 2019
Can you save your workspace using
save('variables')
and attach the variables.mat file here please?
Antworten (1)
Walter Roberson
am 10 Nov. 2019
You would only use
x.y
in one of the following cases:
- x is a struct scalar that has a field named y . In this case, x.y would be a copy of the field y from the single x entry.
- x is a struct array that has a field named y. In this case, x.y would be a "comma separated list" of all of the fields y from the x entries, in linear indexing order of x . This is not uncommon when extracting information from regionprops() results for example.
- x is an object or object array with property named y
- x is an object or object array with method named y
The only two cases in which assigning x.y{2} = b would be legal would be:
- x is a scalar struct that has a field named y that is a cell array and the second entry of that cell array is being assigned to. However, the syntax does not work if x is a non-scalar struct array
- x is a scalar object that has a property named y that is a cell array and the second entry of the property is being assigned to. However, the syntax does not work if x is a non-scalar object
You have indicated that x is a 10 by 200 matrix. Both of the matrix possibilities (x is struct array, x is object array) would generate comma-separated lists when you accessed the field or property y of the array, and using {} indexing of a comma separated list that has more than one entry is not valid.
I cannot tell what you are trying to do. I speculate that you must might possibly want something like
any( x(:,y) == b, 1)
but even that seems unlikely.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!