Vector, Matrix, Array
Susovan Jana
Department of Information Technology
Institute of Engineering & Management, Kolkata, INDIA
Email (O): [email protected]
Email (P): [email protected]
2
Vector in MATLAB
A vector is a one-dimensional array of numbers.
MATLAB allows creating two types of vectors −
─ Row vectors
─ Example: x=[2 5 7 3]
─ Column vectors
─ Example: x=[2
5
7
3]
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
3
Vector Creation in MATLAB
Syntax for Row Vector
─ x=[<values separated by one space or comma>]
─ x=[2 5 7 3]
─ x=[2, 5, 7, 3]
Syntax for Column Vector
─ x=[<values separated by semi-colon>]
─ x=[2; 5; 7; 3]
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
4
Vector Creation
x = j:k
─ x = 1:10
─ Create a unit-spaced vector of
numbers between 1 and 10.
The colon operator uses a
default increment of +1.
x = j:i:k
─ x = 1:2:10
─ X=10:-2:1
─ Create a vector whose
elements incremented or
decremented by 2.
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
5
Matrices and Arrays
All MATLAB variables are multidimensional arrays, no
matter what type of data.
A matrix is a two-dimensional array often used for
linear algebra.
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
6
Matrix Creation
Matrix creation with zeros
& ones
─ x=zeros(3)
─ x=zeros(3,2)
─ x=ones(3)
─ x=ones(3,2)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
7
Matrix Creation
Matrix with integer values
─ a=[1 3 6; 2 5 8; 4 7 9]
─ b=[1 2 3; 4 5 6; 7 8 9]
Matrix with complex number
─ c = [3+4i, 4+3j; -i, 10j]
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
8
Concatenating two Matrix
Horizontally
─ x=[a, b]
Vertically
─ x=[a; b]
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
9
Accessing Values from Matrix
Indexing starts from 1 in MATLAB
Syntax
─ <array name>(<row index>, <column index>)
─ <array name>(<starting row index> : <ending row index> , <starting
column index> : <ending column index> )
─ <array name>(<row index>, <starting column index> : <ending
column index> )
─ <array name>(<starting row index> : <ending row index> , <column
index> )
─ <array name>(<row index>, : )
─ <array name>( : , <column index> )
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
10
Access Single Value
Syntax
─ <array name>(<row index>, <column index>)
Example
─ a(2, 3)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
11
Access 2D Array from a 2D Array
Syntax
─ <array name>(<starting row index> : <ending row index> ,
<starting column index> : <ending column index> )
Example
─ a(1 : 2, 2 : 3)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
12
Access Values from a Single Row/Column
Syntax
1. <array name>(<row index>,
<starting column index> : <ending
column index> )
2. <array name>(<starting row index>
: <ending row index> , <column
index> )
Example
1. a(3, 1:2)
2. a(1:2, 3)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
13
Access a Complete Row/Column
Syntax
1. <array name>(<row index>, : )
2. <array name>( : , <column index> )
Example
1. a(2, : )
2. a( : , 2)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
14
Modifying Values in Matrix
Syntax
─ <array name>(<row index>, <column index>)
Example
─ a (1:2, 1:2)=[11 13; 12 15]
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
15
Deletion of any row & column
Delete any row
─ Syntax: <matrix>(<row position>, : )
─ Example: x( 2 , : ) = []
Delete any column
─ Syntax: <matrix>(: , <column position>)
─ Example: x( : , 5 ) = []
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
16
Addition on Matrix
Syntax
1. <value> + <matrix name>
2. <matrix name> + <matrix name>
Example
1. 5 + a
2. a + b
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
17
Subtraction on Matrix
Syntax
1. <matrix name> - <value>
2. <matrix name> - <matrix name>
Example
1. a - 5
2. a - b
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
18
Multiplication on Matrix
Syntax
1. <value> * <matrix name>
or
<value> .* <matrix name>
2. <matrix name 1> .* <matrix name 2>
3. <matrix name 1> * <matrix name 2>
Example
1. 5 * a
or
2. 5 .* a
3. a .* b
4. a * b
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
19
Division on Matrix
Syntax
1. <matrix name> / <value>
or
<matrix name> ./ <value>
2. <matrix name 1> ./ <matrix name 2>
3. <matrix name 1> / <matrix name 2>
Example
1. a / 2
or
a ./2
2. a ./ b
3. a / b
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
20
String Array
You can represent text in MATLAB® using string
arrays.
Each element of a string array stores a sequence of
characters.
The sequences can have different lengths without
padding, such as "yes" and "no".
A string array that has only one element is also called
a string scalar.
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
21
String Array
You can index into, reshape, and concatenate string
arrays using standard array operations, and you can
append text to them using the + operator.
If a string array represents numbers, then you can
convert it to a numeric array using the double
function.
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
22
String Creation
Syntax
─ <name> = “<text>”
Example
─ str = "A horse! A horse! My kingdom for a horse!“
Get length by calling strlength function
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
23
Character Array Creation
Syntax
─ <array name>=‘<text>’
Example
─ ca='My name is Mr. Xyz.‘
Get size using size function
─ size(ca)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
24
Convert All Letters in String to
Lowercase Characters
Syntax
─ lower(<string name>)
Example
─ lower(str)
For uppercase call
upper in same way
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
25
Remove Something from String
Syntax
─ erase(<string name>, “<character to erase>")
Example
─ erase(str,"!")
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
26
Split String on Space Characters
It discards spaces and returns
a string array
─ split(<string name>)
Split by specified delimiter
─ split(<string name>,<delimiter>)
Example
─ split(str)
Join
─ join(ans)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
27
Find the Unique Words in String
Syntax
─ unique(<string name>)
Example
─ unique(str)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
28
Conversion to String Array
Syntax
─ string(<name of variable>)
Example
─ st=string(A)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
29
Convert Strings That Represent
Numbers
Syntax
─ double(<name of string array>)
Example
─ double(str)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
30
Cell Array
A cell array is a data type with indexed data
containers called cells, where each cell can contain
any type of data.
Cell arrays commonly contain either lists of text,
combinations of text and numbers, or numeric arrays
of different sizes.
Refer to sets of cells by enclosing indices in smooth
parentheses, ().
Access the contents of cells by indexing with curly
braces, {}.
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
31
Creation of Cell Array
When you have data to put into a cell array, create
the array using the cell array construction operator,
{}.
C = {1,2,3; ‘Aditi', rand(5,10,2), {11; 22; 33}}
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
32
Create a Blank Cell Array
Syntax
─ <name>=cell(<size 1>, …., <size n>)
Example
─ C=cell(2)
─ C=cell(2, 3)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
33
Assign Value to Cell Array
Syntax
─ <cell name>(<row index>,<column index>)={<value>}
Example
─ C(1, 1)={'MATLAB'}
─ C(2, : )={[2 5 3], ‘Rahul’, 25.3}
─ C(1, 2 : 3 )={[2 5; 4 3], ‘Aditi’}
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
34
Access Cells
Syntax
─ <cell name>=(<row index>, <column index>)
─ <cell name>={<row index>, <column index>}
Example
─ C(1, 2)
─ C{1, 2}
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
35
Cell to Matrix
C = {[1], [2 3 4]; [5; 9], [6 7 8; 10 11 12]}
A=cell2mat(C)
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA
36
Susovan Jana, Department of Information Technology, IEM, Kolkata, INDIA