68 \begin{itemize} |
68 \begin{itemize} |
69 \item Creating a matrix using direct data |
69 \item Creating a matrix using direct data |
70 \end{itemize} |
70 \end{itemize} |
71 |
71 |
72 \begin{verbatim} |
72 \begin{verbatim} |
73 In []: m1 = matrix([1, 2, 3, 4]) |
73 In []: m1 = array([1, 2, 3, 4]) |
74 \end{verbatim} |
74 \end{verbatim} |
75 |
75 |
76 \begin{itemize} |
76 \begin{itemize} |
77 \item Creating a matrix using lists |
77 \item Creating a matrix using lists |
78 \end{itemize} |
78 \end{itemize} |
79 |
79 |
80 \begin{verbatim} |
80 \begin{verbatim} |
81 In []: l1 = [[1,2,3,4],[5,6,7,8]] |
81 In []: l1 = [[1,2,3,4],[5,6,7,8]] |
82 In []: m2 = matrix(l1) |
82 In []: m2 = array(l1) |
83 \end{verbatim} |
83 \end{verbatim} |
84 |
84 \end{frame} |
85 \begin{itemize} |
85 \begin{frame}[fragile] |
86 \item A matrix is basically an array |
86 \frametitle{Exercise 1} |
|
87 \label{sec-3} |
|
88 |
|
89 Create a (2, 4) matrix \texttt{m3} |
|
90 \begin{verbatim} |
|
91 m3 = [[5, 6, 7, 8], |
|
92 [9, 10, 11, 12]] |
|
93 \end{verbatim} |
|
94 \end{frame} |
|
95 \begin{frame}[fragile] |
|
96 \frametitle{Solution 1} |
|
97 \label{sec-4} |
|
98 |
|
99 \begin{itemize} |
|
100 \item m3 can be created as, |
87 \end{itemize} |
101 \end{itemize} |
88 |
102 |
89 \begin{verbatim} |
103 \begin{verbatim} |
90 In []: m3 = array([[5,6,7,8],[9,10,11,12]]) |
104 In []: m3 = array([[5,6,7,8],[9,10,11,12]]) |
91 \end{verbatim} |
105 \end{verbatim} |
92 \end{frame} |
106 \end{frame} |
93 \begin{frame}[fragile] |
107 \begin{frame}[fragile] |
94 \frametitle{Matrix operations} |
108 \frametitle{Matrix operations} |
95 \label{sec-3} |
109 \label{sec-5} |
96 |
110 |
97 \begin{itemize} |
111 \begin{itemize} |
98 \item Element-wise addition (both matrix should be of order \texttt{mXn}) |
112 \item Element-wise addition (both matrix should be of order \texttt{mXn}) |
99 \begin{verbatim} |
113 \begin{verbatim} |
100 In []: m3 + m2 |
114 In []: m3 + m2 |
107 |
121 |
108 \end{itemize} |
122 \end{itemize} |
109 \end{frame} |
123 \end{frame} |
110 \begin{frame}[fragile] |
124 \begin{frame}[fragile] |
111 \frametitle{Matrix Multiplication} |
125 \frametitle{Matrix Multiplication} |
112 \label{sec-4} |
126 \label{sec-6} |
113 |
127 |
114 \begin{itemize} |
128 \begin{itemize} |
115 \item Matrix Multiplication |
129 \item Element-wise multiplication using \texttt{m3 * m2} |
116 \begin{verbatim} |
130 \begin{verbatim} |
117 In []: m3 * m2 |
131 In []: m3 * m2 |
|
132 \end{verbatim} |
|
133 |
|
134 \item Matrix Multiplication using \texttt{dot(m3, m2)} |
|
135 \begin{verbatim} |
|
136 In []: dot(m3, m2) |
118 Out []: ValueError: objects are not aligned |
137 Out []: ValueError: objects are not aligned |
119 \end{verbatim} |
138 \end{verbatim} |
120 |
139 |
121 \item Element-wise multiplication using \texttt{multiply()} |
|
122 \begin{verbatim} |
|
123 multiply(m3, m2) |
|
124 \end{verbatim} |
|
125 |
|
126 \end{itemize} |
140 \end{itemize} |
127 \end{frame} |
141 \end{frame} |
128 \begin{frame}[fragile] |
142 \begin{frame}[fragile] |
129 \frametitle{Matrix Multiplication (cont'd)} |
143 \frametitle{Matrix Multiplication (cont'd)} |
130 \label{sec-5} |
144 \label{sec-7} |
131 |
145 |
132 \begin{itemize} |
146 \begin{itemize} |
133 \item Create two compatible matrices of order \texttt{nXm} and \texttt{mXr} |
147 \item Create two compatible matrices of order \texttt{nXm} and \texttt{mXr} |
134 \begin{verbatim} |
148 \begin{verbatim} |
135 In []: m1.shape |
149 In []: m1.shape |
140 \item matrix m1 is of order \texttt{1 X 4} |
154 \item matrix m1 is of order \texttt{1 X 4} |
141 \end{itemize} |
155 \end{itemize} |
142 |
156 |
143 \item Creating another matrix of order \texttt{4 X 2} |
157 \item Creating another matrix of order \texttt{4 X 2} |
144 \begin{verbatim} |
158 \begin{verbatim} |
145 In []: m4 = matrix([[1,2],[3,4],[5,6],[7,8]]) |
159 In []: m4 = array([[1,2],[3,4],[5,6],[7,8]]) |
146 \end{verbatim} |
160 \end{verbatim} |
147 |
161 |
148 \item Matrix multiplication |
162 \item Matrix multiplication |
149 \begin{verbatim} |
163 \begin{verbatim} |
150 In []: m1 * m4 |
164 In []: dot(m1, m4) |
151 \end{verbatim} |
165 \end{verbatim} |
152 |
166 |
153 \end{itemize} |
167 \end{itemize} |
154 \end{frame} |
168 \end{frame} |
155 \begin{frame} |
169 \begin{frame} |
156 \frametitle{Recall from \texttt{array}} |
170 \frametitle{Recall from \texttt{array}} |
157 \label{sec-6} |
171 \label{sec-8} |
158 |
172 |
159 \begin{itemize} |
173 \begin{itemize} |
160 \item The functions |
174 \item The functions |
161 |
175 |
162 \begin{itemize} |
176 \begin{itemize} |
176 |
190 |
177 Can also be used with matrices |
191 Can also be used with matrices |
178 \end{frame} |
192 \end{frame} |
179 \begin{frame}[fragile] |
193 \begin{frame}[fragile] |
180 \frametitle{More matrix operations} |
194 \frametitle{More matrix operations} |
181 \label{sec-7} |
195 \label{sec-9} |
182 |
196 |
183 Transpose of a matrix |
197 Transpose of a matrix |
184 \begin{verbatim} |
198 \begin{verbatim} |
185 In []: m4.T |
199 In []: m4.T |
186 \end{verbatim} |
200 \end{verbatim} |
187 \end{frame} |
201 \end{frame} |
188 \begin{frame}[fragile] |
202 \begin{frame}[fragile] |
189 \frametitle{Exercise 1 : Frobenius norm \& inverse} |
203 \frametitle{Exercise 2 : Frobenius norm \& inverse} |
190 \label{sec-8} |
204 \label{sec-10} |
191 |
205 |
192 Find out the Frobenius norm of inverse of a \texttt{4 X 4} matrix. |
206 Find out the Frobenius norm of inverse of a \texttt{4 X 4} matrix. |
193 \begin{verbatim} |
207 \begin{verbatim} |
194 |
208 |
195 \end{verbatim} |
209 \end{verbatim} |
196 |
210 |
197 The matrix is |
211 The matrix is |
198 \begin{verbatim} |
212 \begin{verbatim} |
199 m5 = matrix(arange(1,17).reshape(4,4)) |
213 m5 = arange(1,17).reshape(4,4) |
200 \end{verbatim} |
214 \end{verbatim} |
201 |
215 |
202 \begin{itemize} |
216 \begin{itemize} |
203 \item Inverse of A, |
217 \item Inverse of A, |
204 |
218 |