day1/cheatsheet4.tex
author Shantanu <shantanu@fossee.in>
Wed, 18 Nov 2009 22:30:43 +0530
changeset 315 141f3903d4e8
parent 295 39d7c4e14585
child 316 6108f2007151
permissions -rwxr-xr-x
Modified Matrix operation part of cheat sheet 4.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
284
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     1
\documentclass[12pt]{article}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     2
\title{Matrices and Least Square Fit}
284
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
     3
\author{FOSSEE}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     4
\usepackage{listings}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     5
\lstset{language=Python,
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     6
    basicstyle=\ttfamily,
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     7
  commentstyle=\itshape\bfseries,
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     8
  showstringspaces=false,
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
     9
}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    10
\newcommand{\typ}[1]{\lstinline{#1}}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    11
\usepackage[english]{babel}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    12
\usepackage[latin1]{inputenc}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    13
\usepackage{times}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    14
\usepackage[T1]{fontenc}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    15
\usepackage{ae,aecompl}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    16
\usepackage{mathpazo,courier,euler}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    17
\usepackage[scaled=.95]{helvet}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    18
284
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    19
\begin{document}
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    20
\date{}
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    21
\vspace{-1in}
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    22
\begin{center}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    23
\LARGE{Matrices and Least Square Fit}\\
284
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    24
\large{FOSSEE}
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    25
\end{center}
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
    26
\section{Matrices}
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    27
\subsection{Basics}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    28
Matrix Creation\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    29
\typ{In []: C = array([[1,1,2], [2,4,1], [-1,3,7]])}\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    30
It creates C matrix of shape 3x3\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    31
Shape is dimenions of given array.
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    32
\begin{lstlisting}
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    33
In []: C.shape 
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    34
Out[]: (3, 3)
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    35
In []: shape([[1,2],[4,5],[3,0]])
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    36
Out[]: (3, 2)
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    37
\end{lstlisting}
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    38
\typ{In []: B = ones_like(C)} \\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    39
B would be array of ones with the same shape and type as C.\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    40
\typ{In []: A = ones((3,2))} \\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    41
A would be new array of given shape(arguments), filled with ones.\\ 
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    42
\typ{In []: I = identity(3)}\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    43
I would be identity matrix of shape 3x3
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    44
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    45
\subsection{Accessing Elements}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    46
\begin{lstlisting}
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    47
In []: C
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    48
Out[]: 
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    49
array([[ 1,  1,  2],
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    50
       [ 2,  4,  1],
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    51
       [-1,  3,  7]])
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    52
In []: C[1,2]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    53
Out[]: 1
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    54
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    55
Two indexes seperated by ',' specifies row, column. So \kwrd{C[1,2]} gets third element of second row(indices starts from 0).
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    56
\newpage
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    57
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    58
In []: C[1]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    59
Out[]: array([2, 4, 1])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    60
\end{lstlisting}
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    61
Single index implies complete row.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    62
\subsection{Changing elements}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    63
\begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    64
In []: C[1,1] = -2
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    65
In []: C
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    66
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    67
array([[ 1,  1,  2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    68
       [ 2, -2,  1],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    69
       [-1,  3,  7]])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    70
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    71
In []: C[1] = [0,0,0]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    72
In []: C
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    73
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    74
array([[ 1,  1,  2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    75
       [ 0,  0,  0],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    76
       [-1,  3,  7]])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    77
\end{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    78
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    79
\subsection{Slicing}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    80
Accessing rows with Matricies is straightforward. But If one wants to access particular Column, or want a sub-matrix, Slicing is the way to go.
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    81
\begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    82
In []: C[:,1]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    83
Out[]: array([1, 0, 3])
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    84
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    85
First index(:) specifies row(':' implies all the rows) and second index(1) specifies column(second column).
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    86
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    87
In []: C[1,:]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    88
Out[]: array([0, 0, 0])
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    89
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    90
Here we get second row(1), all columns(':') of C matrix.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    91
\newpage
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    92
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    93
In []: C[0:2,:]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    94
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    95
array([[1, 1, 2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
    96
       [0, 0, 0]])
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    97
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    98
Result is sub-matrix with first and second row(endpoint is excluded), and all columns from C.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
    99
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   100
In []: C[1:3,:]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   101
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   102
array([[ 0,  0,  0],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   103
       [-1,  3,  7]])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   104
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   105
In []: C[:2,:]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   106
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   107
array([[1, 1, 2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   108
       [0, 0, 0]])
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   109
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   110
\typ{':2'} => start from first row, till and excluding third row.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   111
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   112
In []: C[1:,:]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   113
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   114
array([[ 0,  0,  0],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   115
       [-1,  3,  7]])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   116
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   117
In []: C[1:,:2]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   118
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   119
array([[ 0,  0],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   120
       [-1,  3]])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   121
\end{lstlisting}
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   122
\typ{'1:'} => Start from second row, till last row\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   123
\typ{':2'} => Start from first column, till and excluding third column.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   124
\subsection{Striding}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   125
Often apart from submatrix, one needs to get some mechanism to jump a step. For example, how can we have all alternate rows of a Matrix. \\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   126
Following method will return Matrix with alternate rows.
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   127
\begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   128
In []: C[::2,:]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   129
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   130
array([[ 1,  1,  2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   131
       [-1,  3,  7]])
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   132
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   133
\typ{C[startR:stopR:stepR,startC:stopC:stepC]} => Syntax of mentioning starting index, ending index, and step to jump.\\
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   134
In above mentioned case, \typ{'::2'} means, start from first row, till last row(both are blank), with step of 2, that is, skipping alternate row. After first row, C[startR], next row would be C[startR+stepR] and so on.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   135
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   136
In []: C[:,::2]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   137
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   138
xarray([[ 1,  2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   139
       [ 0,  0],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   140
       [-1,  7]])
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   141
\end{lstlisting}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   142
Same as above, just that here we get matrix with each alternate column and all rows.
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   143
\begin{lstlisting}
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   144
In []: C[::2,::2]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   145
Out[]: 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   146
array([[ 1,  2],
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   147
       [-1,  7]])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   148
\end{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   149
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   150
\Section{Matrix Operations}
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   151
For a Matrix A and B of equal shapes.
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   152
\begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   153
In []: A.T # Transpose
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   154
In []: sum(A) # Sum of all elements
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   155
In []: A+B # Addition
315
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   156
In []: A*B # Element wise product
141f3903d4e8 Modified Matrix operation part of cheat sheet 4.
Shantanu <shantanu@fossee.in>
parents: 295
diff changeset
   157
In []: dot(A,b) #Matrix multiplication
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   158
In []: inv(A) # Inverse
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   159
In []: det(A) # Determinant
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   160
\end{lstlisting}
284
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   161
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   162
Eigen Values and Eigen Vectors
295
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   163
\begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   164
In []: eig(A) #Eigen Values and Vectors
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   165
In []: eigvals(A) #Eigen Values 
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   166
\end{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   167
%% Norm
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   168
%% \begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   169
%% In []: norm(A)
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   170
%% \end{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   171
%% Single Value Decomposition
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   172
%% \begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   173
%% In []: svd(A)
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   174
%% \end{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   175
Least Square Fit Line
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   176
\begin{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   177
In []: A = array([L, ones_like(L)])
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   178
In []: A = A.T
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   179
In []: result = lstsq(A,TSq)
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   180
In []: coef = result[0]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   181
In []: Tline = coef[0]*L + coef[1]
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   182
In []: plot(L, Tline)
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   183
\end{lstlisting}
39d7c4e14585 Added all day 1 cheatsheets.
Madhusudan.C.S <madhusudancs@gmail.com>
parents: 284
diff changeset
   184
284
3c191accbb32 Added Cheatsheets for day1.
Puneeth Chaganti <punchagan@fossee.in>
parents:
diff changeset
   185
\end{document}