Azzera filtri
Azzera filtri

Add SINGLE element to array or vector

4.768 visualizzazioni (ultimi 30 giorni)
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 Commento
Image Analyst
Image Analyst il 27 Mag 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.

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 12 Mag 2016
Modificato: Image Analyst il 18 Ott 2020
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
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]
x = [x, newval]
For a column vector:
x = [x; newval]
  6 Commenti
Mathi il 5 Nov 2019
The above code is working perfectly. Thank you.
Stefano Cardarelli
Stefano Cardarelli il 26 Mar 2020
Modificato: Stefano Cardarelli il 26 Mar 2020
also this works for me, is basically direct indexing:
x(end+1) = newval

Accedi per commentare.

Più risposte (2)

Dakota Jandek
Dakota Jandek il 7 Apr 2020
x = [1, 2, 3]
x(length(x)+1) = 4
  2 Commenti
Adrien Bouguerra
Adrien Bouguerra il 18 Ott 2020
amazing method , really efficient thank u so much Dakota
Image Analyst
Image Analyst il 18 Ott 2020
Or even better,
x = [1, 2, 3]
x(end+1) = 4

Accedi per commentare.

Youssef AAKAM
Youssef AAKAM il 13 Ott 2019


Scopri di più su Matrices and Arrays in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by