summaryrefslogtreecommitdiff
path: root/accessing_parts_of_arrays/slides.org
blob: 98d59237c5e311f5890b406d26e6d357b07dafbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#+LaTeX_CLASS: beamer
#+LaTeX_CLASS_OPTIONS: [presentation]
#+BEAMER_FRAME_LEVEL: 1

#+BEAMER_HEADER_EXTRA: \usetheme{Antibes}\usecolortheme{lily}\useoutertheme{infolines}\setbeamercovered{transparent}
#+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_envargs(Env Args) %4BEAMER_col(Col) %8BEAMER_extra(Extra)
#+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 :ETC

#+LaTeX_CLASS: beamer
#+LaTeX_CLASS_OPTIONS: [presentation]

#+LaTeX_HEADER: \usepackage[english]{babel} \usepackage{ae,aecompl}
#+LaTeX_HEADER: \usepackage{mathpazo,courier,euler} \usepackage[scaled=.95]{helvet}

#+LaTeX_HEADER: \usepackage{listings}

#+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries,
#+LaTeX_HEADER:  commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
#+LaTeX_HEADER:  showstringspaces=false, keywordstyle=\color{blue}\bfseries}

#+TITLE:    
#+AUTHOR:    FOSSEE
#+EMAIL:     
#+DATE:    

#+DESCRIPTION: 
#+KEYWORDS: 
#+LANGUAGE:  en
#+OPTIONS:   H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
#+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc

* 
#+begin_latex
\begin{center}
\vspace{12pt}
\textcolor{blue}{\huge Getting started with Arrays}
\end{center}
\vspace{18pt}
\begin{center}
\vspace{10pt}
\includegraphics[scale=0.95]{../images/fossee-logo.png}\\
\vspace{5pt}
\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ 
\scriptsize Funded by National Mission on Education through ICT\\
\scriptsize  MHRD,Govt. of India\\
\includegraphics[scale=0.30]{../images/iitb-logo.png}\\
\end{center}
#+end_latex
* Objectives
  At the end of this tutorial, you will be able to,
   
  - Access and change individual elements of arrays, both one
    dimensional and multi-dimensional.
  - Access and change rows and columns of arrays. 
  - Access and change other chunks from an array, using slicing
    and striding. 
  - Read images into arrays and perform processing on them, using
    simple array manipulations.
* Pre-requisite
  - Spoken tutorial on "Getting started with Arrays".
* Sample Arrays
  #+begin_src python
    In []: A = array([12, 23, 34, 45, 56])
    
    In []: C = array([[11, 12, 13, 14, 15],
                      [21, 22, 23, 24, 25],
                      [31, 32, 33, 34, 35],
                      [41, 42, 43, 44, 45],
                      [51, 52, 53, 54, 55]])
    
  #+end_src
* Exercise 1
  Change the last column of ~C~ to zeroes. 
* Exercise 2
  Change ~A~ to ~[11, 12, 13, 14, 15]~. 
* squares.png
  #+begin_latex
    \begin{center}
      \includegraphics[scale=0.6]{squares}    
    \end{center}
  #+end_latex
* Exercise 3
  - obtain ~[22, 23]~ from ~C~. 
  - obtain ~[11, 21, 31, 41]~ from ~C~. 
  - obtain ~[21, 31, 41, 0]~. 
* Exercise 4
  Obtain ~[[23, 24], [33, -34]]~ from ~C~
* Exercise 5
  Obtain the square in the center of the image
* Exercise 6
  Obtain the following
  #+begin_src python
    [[12, 0], [42, 0]]
    [[12, 13, 14], [0, 0, 0]]
  #+end_src

* Solution 6
  #+begin_src python
    In []: C[::3, 1::3]
    In []: C[::4, 1:4]
  #+end_src
* Summary
  In this tutorial, we have learnt to, 
 
  - Manipulate single & multi dimensional arrays.
  - Access and change individual elements by using their index numbers. 
  - Access and change rows and columns of arrays by specifying the row 
    and column numbers.
  - Slice and stride on arrays.
  - Read images into arrays and manipulate them.
* Evaluation
  1. Given the array, ``A = array([12, 15, 18, 21])``, how do we access
     the element ``18``?


  2. Given the array, 
   
     C = array([[10, 11, 12, 13],
               [20, 21, 22, 23],
               [30, 31, 32, 33],
               [40, 41, 42, 43]])

     Obtain the elements, ``[[21, 22], [31, 32]]``


  3. Given the array, 
 
     C = array([[10, 11, 12, 13],
                [20, 21, 22, 23]])

     Change the array to 
   
    C = array([[10, 11, 10, 11],
               [20, 21, 20, 21]])
* Solutions
  1. A[ 2 ]

  2. B[1:3, 1:3]

  3. B[:2, 2:] = B[:2, :2]

* 
#+begin_latex
  \begin{block}{}
  \begin{center}
  \textcolor{blue}{\Large THANK YOU!} 
  \end{center}
  \end{block}
\begin{block}{}
  \begin{center}
    For more Information, visit our website\\
    \url{http://fossee.in/}
  \end{center}  
  \end{block}
#+end_latex