Adding an Element to an Array in Matlab - A Comprehensive Guide with Code Samples

This article dives deep into the world of arrays in Matlab, a programming language used by countless researchers, engineers, and data scientists. In this extensive tutorial, we will learn how to add a …

Updated October 16, 2023

Today’s sponsor is Depot. Depot is a remote container build service that’s half the cost of GitHub Actions runners and up to 40x faster than other build services. Try it for free.

This article dives deep into the world of arrays in Matlab, a programming language used by countless researchers, engineers, and data scientists. In this extensive tutorial, we will learn how to add an element to an array using different techniques available within the Matlab environment, along with code samples that demonstrate their application. We will also discuss how understanding and effectively utilizing arrays can be crucial for various data processing tasks in your projects.

In the realm of programming languages and data manipulation, Matlab offers numerous tools to work with data structures such as arrays. Arrays store a collection of elements in memory and provide efficient means for working with large sets of data. One crucial operation while dealing with arrays is adding new elements or appending existing ones to them. We will discuss various methods to add an element to an array in Matlab, along with the advantages of each technique.

1. Using Vector Indexing

Vector indexing is the most straightforward method to add an element to an array by specifying its position within the array using square brackets ‘[]’. Consider a simple example where we have an array named ‘a’ with existing elements:

a = [1, 2, 3];

To add a new element at the beginning of this array, we can reassign ‘a’ with the updated value after specifying its position in square brackets:

a(1) = -1;

Now, the updated array will look like: [-1, 1, 2, 3] as the new element (-1) was added at index 1. It is essential to remember that Matlab starts counting indices from 1 instead of 0 (common in other programming languages). Similarly, you can also insert an element into any position within the array by specifying its appropriate index.

2. Using the ‘insert’ Function

The ‘insert’ function lets us add new elements to a given array at any specified location, regardless of the size of the input array. For example:

a = [1, 2, 3]; b = insert(a, -1, 4); % Insert the element 4 after index -1 (-1 is before 1st element)

Now ‘b’ will have the following elements: [1, 2, 3, 4] as element ‘4’ was added just after the first element. In case we want to add an element at any position within the array, we can simply provide the location where the new element should be inserted.

3. Using Cell Arrays and Nested Array Concepts

Cell arrays are a special type of container in Matlab that allows for storing diverse elements of different data types. They work as a list of individual elements and have their indexing scheme starting from 1 instead of 0 like regular arrays.

To demonstrate the use of cell arrays, let’s first create two matrices:

A = [2, 3]; B = [-4, -5];

Now we want to combine ‘A’ and ‘B’ into a single array called ‘C’. We can achieve this by creating a cell array with two cells, each storing one of the matrices:

C = {A, B}; % Create a cell array containing both A and B

However, Matlab does not directly allow the concatenation of these two cell arrays. To solve this, we can leverage the ‘horzcat’ function to combine the vectors stored in each cell element into a single column vector:

D = horzcat(C{1}, C{2}); % Concatenate A and B columns together

4. Using Vertical and Horizontal Concatenation with Vector Operators

Matlab offers special operators like ‘colon’ ‘:’, ‘[’, and ‘.’, which can be used to conveniently add elements to a vector or matrix while performing various operations such as vertical and horizontal concatenation. To demonstrate this technique, let’s start by creating three matrices:

A = [1; 2; 3]; B = [-4; -5; -6]; C = 0;

We will now add the first two matrices together using vertical concatenation and store the result in a new variable ‘D’:

D = A + B; % Add matrix columns vertically to create D

To combine all three matrices, we can use horizontal concatenation by specifying the index of the desired dimensions and the required operation:

E = [A, B, C] + [0.1, 0.2, 0.3]; % Horizontal concatenate and add new values to each dimension


In conclusion, Matlab provides multiple ways to add an element to an array, catering to diverse scenarios such as inserting elements at specific locations, utilizing built-in functions like ‘insert’ and ‘horzcat’, working with cell arrays, or using vector operators for concatenation. By understanding the nuances of these techniques, you will be well-equipped to address various data processing requirements in your projects.