Homebreadcumb forward arrow iconBlogbreadcumb forward arrow iconArtificial Intelligencebreadcumb forward arrow iconMATLAB Data Types: Everything You Need to Know

MATLAB Data Types: Everything You Need to Know

Last updated:
16th Sep, 2020
Read Time
8 Mins
share image icon
In this article
Chevron in toc
View All
MATLAB Data Types: Everything You Need to Know

MATLAB provides many ways to store numbers and variables. All the numbers are equivalent to actual numerical real numbers. There is an upper limit to the largest number and a lower limit on the absolute value of the non-zero number. This is due to the finite memory of the processing devices compared to the real number, which can be infinite.

Best Machine Learning and AI Courses Online

Due to finite space, the MATLAB variable cannot store an irrational number. E.g., The value of pi is returned to the approximation value. The set of values that are represented in the MATLAB variable is finite. Data types in MATLAB will help to handle this limitation.

All MATLAB variables belong to a class where different classes have different characteristics and are suitable to represent different types of data, whether it is numeric, textual, or complex.  

Ads of upGrad blog

Remember: All the given elements in an array should be of the same type.

In-demand Machine Learning Skills

Get Machine Learning Certification from the World’s top Universities. Earn Masters, Executive PGP, or Advanced Certificate Programs to fast-track your career.

MATLAB provides in a total of 16 fundamental types, and the data types in MATLAB is defined by,

  • Set of values defined
  • Operation Set that can be used to perform on those values


Numerical Types

The numerical types include signed and unsigned integers, single, double-precision floating-point numbers. The numeric variables and their features are listed below:

doubleDouble-precision arrays
  • Default numeric data type (class) in MATLAB
  • Stored as 64-bit (8-byte) floating-point value
  • Range-

Negative numbers = -1.79769 x 10308 and -2.22507 x 10-308

Positive numbers = 2.22507 x 10-308 and 1.79769 x 10308

singleSingle-precision arrays
  •   Stored as 4-byte (32-bit) floating-point value
  •    Range-

Negative numbers = -1.79769 x 10308 and -2.22507 x 10-308

Positive numbers = 2.22507 x 10-308 and 1.79769 x 10308

int88-bit signed integer arrays
  • Stored as 1-byte (8-bit) signed integers
  • Range is -27 to 27-1
int1616-bit signed integer arrays
  • Stored as 2-byte (16-bit) signed integers
  •  Range -215 to 215 -1
int3232-bit signed integer arrays
  • Stored as 4-byte (32-bit) signed integers
  •  Range is -231 to 231-1
int6464-bit signed integer arrays
  • Stored as 8-byte (64-bit) signed integers
  •  Range is -263 to 263-1
uint88-bit unsigned integer arrays
  • Stored as 1-byte (8-bit) unsigned integers
  •  Range is 0 to 28-1
uint1616-bit unsigned integer arrays
  • Stored as 2-byte (16-bit) unsigned integers
  • Range is 0 to 216 -1
uint3232-bit unsigned integer arrays
  • Stored as 4-byte (32-bit) unsigned integers
  •  Range is 0 to 232-1
uint6464-bit unsigned integer arrays
  • Stored as 8-byte (64-bit) unsigned integers
  •  Range is 0 to 264-1

Read: While loop in MATLAB: Everything You Need to Know

Logical Type

True and false value is represented with the logical value 0 and 1. Any numerical value (non-complex) can be converted into logical representation.

Syntax: L = logical (x)

The above statement converts x into any array of logical values. Nonzero element of x is converted to the logical value 1 (true), and zero value is converted to logical value 0 (false). 

Character and String type

The MATLAB character and string array provide storage for text data. The sequence of characters is a character array compared with the sequence of numbers called a numeric array.

Syntax: c = ‘up grad’

“up grad” is the sequence of characters forming a string array. We can observe this also as a piece of text wrapped.

Cell array

A cell array is a MATLAB data type which contains indexed data containers called cellsCells can contain any type of data, commonly contain character vectors of different length, numbers, an array of numbers of any size. Sets of cells are enclosed in () and access to the cells is done by using {} which is to create, edit or delete any cell functions.

Syntaxc = {s,m,i,l,e}


Tabular or column-oriented data requires tables, and this is stored as columns in a text file or spreadsheet. It contains rows and column variables. Each variable can be of different data types and different sizes, but each variable needs to have the same number of rows.

Range of functions are used to access data to create, edit, and read the table data.


Named fields contain data with varying types and sizes. Here data containers are used to group related data and their type, which are called fieldsFields may contain any type of data.

Access to the data in the structures is given using the dot notation.

Format: structname.fieldName.


Scalar structure is used to store patient records, belonging to the same group.

patient(1).name = ‘John Doe’;

patient(1).billing = 127.00;

patient(1).test = [79, 75, 73; 180, 178, 177.5; 220, 210, 205];

Function Handles

Use of a function handle is majorly to pass a function (numerical or char) to another function. Variables that are used to invoke function indirectly can be named as Function handle.

To create a function handle ‘@’ operator is used.

Example: To create a function handle to evaluate a2 -b2 , function used is:

F = @(a,b) (a.^2 – b.^2);

Data type identification

MATLAB has a set of variables that are used to identify the data type 

iscalendardurationTo check if input data is calendar duration array
iscellstrTo check if input data is a cell array is of character vectors
iscellTo check if input data is cell array
isjavaTo check if input data is Java object
ischarTo check if input data is character array
iscategoricalTo check whether input data is categorical array
isdurationTo check if input data is duration array
isenumTo check if variable is enumeration
isfloatTo check if input data is floating-point array
isdatetimeTo check if input data is datetime array
isintegerTo check whether input data is integer array
istableTo check whether input data is table
isgraphicsTrue for valid graphics object handles
isnumericTo check whether input data is numeric array
isobjectTo check if input data is MATLAB object
isrealTo check whether array is real
isstringTo check if input data is string array
isstructTo check if input data is structure array
validateattributesCheck validity of array
istimetableTo check if input data is timetable
isaTo check if input data has specified data type
islogicalTo check if input data is logical array
is*Detect state
classClass of object

Data Type conversion

The following functions are used to change between different MATLAB data types, a numeric array, character array, cell array, structures, or tables.

char – Character array

cellstr – To change to cell array of character vectors

int2str – To change integers to characters

mat2str – To change matrix to characters

num2str – To change numbers to a character array

str2double – To change strings to double precision values

str2num – To change character array or string to numeric array

native2unicode – To change numeric bytes to Unicode character representation

unicode2native – To change Unicode character representation to numeric bytes

base2dec – To change text representing a number in base N to decimal number

hex2dec – To change text representation of a hexadecimal number to decimal number

hex2num – To change IEEE hexadecimal format to a double-precision number

num2hex – To change single- and double-precision numbers to IEEE hexadecimal format

table2array – To change the table to a homogeneous array

table2cell – To change table to cell array

table2struct – To change table to structure array

array2table – To change the homogeneous array to a table

cell2table – To change the cell array to a table

struct2table – To change the structure array to a table

Also Read: Recursion in Data Structure: How Does it Work, Types & When Used

cell2mat – To change cell array to an ordinary array of the underlying data type

cell2struct – To change cell array to structure array

mat2cell – To change array to cell array whose cells contain subarrays

num2cell – To change array to cell array with consistently sized cells

struct2cell – To change structure to cell array    

Ads of upGrad blog

Popular AI and ML Blogs & Free Courses


From the above article, we got an overview of various MATLAB data types. Each of these data types is very essential for MATLAB users to understand and effectively use MATLAB programming. MATLAB is very popular in the science and engineering fields due to its precise calculation, syntax, and large community support.  

If you’re interested to learn more about MATLAB, machine learning, and its relevant topics, check out IIIT-B & upGrad’s PG Diploma in Machine Learning & AI which is designed for working professionals and offers 450+ hours of rigorous training, 30+ case studies & assignments, IIIT-B Alumni status, 5+ practical hands-on capstone projects & job assistance with top firms.


Pavan Vadapalli

Blog Author
Director of Engineering @ upGrad. Motivated to leverage technology to solve problems. Seasoned leader for startups and fast moving orgs. Working on solving problems of scale and long term technology strategy.
Get Free Consultation

Select Coursecaret down icon
Selectcaret down icon
By clicking 'Submit' you Agree to  
UpGrad's Terms & Conditions

Our Popular Machine Learning Course

Frequently Asked Questions (FAQs)

1What are different data types used in MATLAB?

Data in MATLAB can be either numeric or character. Numeric data represents values that correspond to the numbers and arithmetic operations you are familiar with, such as addition and multiplication. Character data are strings of text, such as words, letters, or symbols (such as '$'). The elements of character arrays can be accessed using the same syntax as for numeric data (e.g., C('This is a character array') returns the element of array C that contains the string, This is a character array).

2What are structures in MATLAB?

MATLAB includes three classes of structures: cell arrays, structs, and handle arrays. A cell array is a single data structure that contains elements of different types. A cell array is actually a group of structures, each of which contains one element of the array. If you use the cell() function to create a cell array, MATLAB fills the array with zeros by default. A struct is a collection of variables that all have the same name, but may have different types. MATLAB handles structs as cell arrays. You can store only one struct in a cell array. A handle array is a container for references to other MATLAB arrays or to objects such as graphs and figures. You can store multiple handle arrays in a cell array.

3How to identify the data type in matlab?

This can be done using isa command in matlab. The syntax of isa command is as: isa(my_data). For example: If you want to know the data type of my_data, you can use the isa command as: isa(my_data) This will return the following text: int64, int32, int16, uint8, uint32, uint64, complex64, complex128, char. This command is to be used in matlab only.

Explore Free Courses

Suggested Blogs

Data Preprocessing in Machine Learning: 7 Easy Steps To Follow
Summary: In this article, you will learn about data preprocessing in Machine Learning: 7 easy steps to follow. Acquire the dataset Import all the cr
Read More

by Kechit Goyal

29 Oct 2023

Natural Language Processing (NLP) Projects & Topics For Beginners [2023]
What are Natural Language Processing Projects? NLP project ideas advanced encompass various applications and research areas that leverage computation
Read More

by Pavan Vadapalli

04 Oct 2023

15 Interesting MATLAB Project Ideas & Topics For Beginners [2023]
Learning about MATLAB can be tedious. It’s capable of performing many tasks and solving highly complex problems of different domains. If youR
Read More

by Pavan Vadapalli

03 Oct 2023

Top 16 Artificial Intelligence Project Ideas & Topics for Beginners [2023]
Summary: In this article, you will learn the 16 AI project ideas & Topics. Take a glimpse below. Predict Housing Price Enron Investigation Stock
Read More

by Pavan Vadapalli

27 Sep 2023

Top 15 Deep Learning Interview Questions & Answers
Although still evolving, Deep Learning has emerged as a breakthrough technology in the field of Data Science. From Google’s DeepMind to self-dri
Read More

by Prashant Kathuria

21 Sep 2023

Top 8 Exciting AWS Projects & Ideas For Beginners [2023]
AWS Projects & Topics Looking for AWS project ideas? Then you’ve come to the right place because, in this article, we’ve shared multiple AWS proj
Read More

by Pavan Vadapalli

19 Sep 2023

Top 15 IoT Interview Questions & Answers 2023 – For Beginners & Experienced
These days, the minute you indulge in any technology-oriented discussion, interview questions on cloud computing come up in some form or the other. Th
Read More

by Kechit Goyal

15 Sep 2023

45+ Interesting Machine Learning Project Ideas For Beginners [2023]
Summary: In this Article, you will learn Stock Prices Predictor Sports Predictor Develop A Sentiment Analyzer Enhance Healthcare Prepare ML Algorith
Read More

by Jaideep Khare

14 Sep 2023

Why GPUs for Machine Learning? Ultimate Guide
In the realm of modern technology, the convergence of data and algorithms has paved the way for groundbreaking advancements in artificial intelligence
Read More

by Pavan Vadapalli

14 Sep 2023

Schedule 1:1 free counsellingTalk to Career Expert
footer sticky close icon