Add SINGLE element to array or vector

I have a vector of the format:
x = [xval(1) xval(2) … xval(n)]
, and I want to add an element to the end, xval(n+1). How do I do that?

1 Kommentar

Image Analyst
Image Analyst am 27 Mai 2022
@Anushalini Thiyagarajan I have no idea what you mean. Please ask your question in a new question (not here) after you read this:
In the meantime, look at input functions such as readmatrix, importdata, dlmread, xlsread, fgetl, etc.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Image Analyst
Image Analyst am 12 Mai 2016
Bearbeitet: Image Analyst am 18 Okt. 2020

45 Stimmen

For an existing vector x, you can assign a new element to the end using direct indexing. For example
x = [1 2 3]
x(4) = 4
or
x(end+1) = 4;
where "end" is a special keyword in MATLAB that means the last index in the array. So in your specific case of n elements, it would automatically know that "end" is your "n".
Another way to add an element to a row vector “x” is by using concatenation:
x = [x newval]
or
x = [x, newval]
For a column vector:
x = [x; newval]

6 Kommentare

Weird Rando
Weird Rando am 12 Mai 2016
Bearbeitet: Weird Rando am 12 Mai 2016
Also, you need to initialise the variable x before your for loop.
x = [];
And inside the for loop you use Image Analyst code.
Pedro GUillem
Pedro GUillem am 12 Mai 2016
Thank you so much!!
Brent Vaalburg
Brent Vaalburg am 2 Dez. 2018
How would you add a delimeter to this?
Image Analyst
Image Analyst am 2 Dez. 2018
Please state exactly what you'd like as an output. It sounds like you want a string (character array).
Mathi
Mathi am 5 Nov. 2019
The above code is working perfectly. Thank you.
Stefano Cardarelli
Stefano Cardarelli am 26 Mär. 2020
Bearbeitet: Stefano Cardarelli am 26 Mär. 2020
also this works for me, is basically direct indexing:
x(end+1) = newval

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Dakota Jandek
Dakota Jandek am 7 Apr. 2020

2 Stimmen

x = [1, 2, 3]
x(length(x)+1) = 4

2 Kommentare

Adrien Bouguerra
Adrien Bouguerra am 18 Okt. 2020
amazing method , really efficient thank u so much Dakota
Or even better,
x = [1, 2, 3]
x(end+1) = 4

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrices and Arrays finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by