Is there a way to start indexing with 0 in MATLAB?
47 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
IBM watson
am 2 Jan. 2019
Kommentiert: Rohit
am 5 Jul. 2023
a=[4 2 5 2]
can I make this happen?
a(0)=4
0 Kommentare
Akzeptierte Antwort
madhan ravi
am 2 Jan. 2019
Nope not at all index of matlab starts from 1 always!
10 Kommentare
Bruno Luong
am 3 Jul. 2023
You confuse between uint8 arithmetics (that can never return anything beyond (0:255))
and indexing range.
Rohit
am 5 Jul. 2023
@Stephen23 @Bruno Luong Thank you for your inputs. I was under the assumption that typecasting the index would change the the data type of the output which is not the case.
Weitere Antworten (2)
Bruno Luong
am 2 Jan. 2019
Bearbeitet: Bruno Luong
am 2 Jan. 2019
Yes, but you won't get much support by built-in array stock function
>> M = containers.Map('KeyType','uint32','ValueType','double')
M =
Map with properties:
Count: 0
KeyType: uint32
ValueType: double
>> M(0)=3
M =
Map with properties:
Count: 1
KeyType: uint32
ValueType: double
>> M(0)
ans =
3
>>
6 Kommentare
Utku Yilmaz
am 19 Apr. 2020
Bearbeitet: Utku Yilmaz
am 19 Apr. 2020
ZeroBased function (link given above) is very useful. 1 based indexing creates problem when I share my code with software developers using C language. The indexes get messy and it becomes very hard to compare codes.
I always used index values starting from 0, as following. But I think, I will utilize ZeroBased function from now on.
for index_A = 0 : 10
for index_B = 0 : 10
value = a_matrix(index_A+1, index_B+1);
end
end
Bruno Luong
am 3 Jul. 2023
One way is to define your onw class with overloading subsref and subsasg
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!