#+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 Accessing pieces of 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, B = 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. C[:2, 2:] = C[: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