manipulating-lists/slides.org
changeset 421 c4c5d1123f07
parent 312 8cb703eee88d
equal deleted inserted replaced
413:da1f270b07b7 421:c4c5d1123f07
    16 
    16 
    17 #+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries,
    17 #+LaTeX_HEADER:\lstset{language=Python, basicstyle=\ttfamily\bfseries,
    18 #+LaTeX_HEADER:  commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
    18 #+LaTeX_HEADER:  commentstyle=\color{red}\itshape, stringstyle=\color{darkgreen},
    19 #+LaTeX_HEADER:  showstringspaces=false, keywordstyle=\color{blue}\bfseries}
    19 #+LaTeX_HEADER:  showstringspaces=false, keywordstyle=\color{blue}\bfseries}
    20 
    20 
    21 #+TITLE:    Accessing parts of arrays
    21 #+TITLE:    Manipulating Lists
    22 #+AUTHOR:    FOSSEE
    22 #+AUTHOR:    FOSSEE
    23 #+EMAIL:     
    23 #+EMAIL:     
    24 #+DATE:    
    24 #+DATE:    
    25 
    25 
    26 #+DESCRIPTION: 
    26 #+DESCRIPTION: 
    27 #+KEYWORDS: 
    27 #+KEYWORDS: 
    28 #+LANGUAGE:  en
    28 #+LANGUAGE:  en
    29 #+OPTIONS:   H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
    29 #+OPTIONS:   H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
    30 #+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc
    30 #+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:nil pri:nil tags:not-in-toc
       
    31 #+STARTUP:    align fold nodlcheck hidestars oddeven lognotestate
    31 
    32 
    32 * Outline
    33 * Outline
    33   - Manipulating one and multi dimensional arrays
    34   In this session we shall be looking at 
    34   - Access and change individual elements 
    35   - Concatenating lists
    35   - Access and change rows and columns 
    36   - Obtaining parts of lists
    36   - Slicing and striding on arrays to access chunks 
    37   - Sorting lists
    37   - Read images into arrays and manipulations
    38   - Reversing lists
    38 * Sample Arrays
       
    39   #+begin_src python
       
    40     In []: A = array([12, 23, 34, 45, 56])
       
    41     
       
    42     In []: C = array([[11, 12, 13, 14, 15],
       
    43                       [21, 22, 23, 24, 25],
       
    44                       [31, 32, 33, 34, 35],
       
    45                       [41, 42, 43, 44, 45],
       
    46                       [51, 52, 53, 54, 55]])
       
    47     
       
    48   #+end_src
       
    49 * Question 1
    39 * Question 1
    50   Change the last column of ~C~ to zeroes. 
    40   Obtain the primes less than 10, from the list ~primes~. 
    51 * Solution 1
    41 * Solution 1
    52   #+begin_src python
    42   #+begin_src python
    53     In []:  C[:, -1] = 0
    43     primes[0:4]
    54   #+end_src
    44   #+end_src python
       
    45 * Slicing
       
    46   #+begin_src python
       
    47     p[start:stop]
       
    48   #+end_src python
       
    49   - Returns all elements of ~p~ between ~start~ and ~stop~
       
    50   - The element with index equal to ~stop~ is *not* included. 
    55 * Question 2
    51 * Question 2
    56   Change ~A~ to ~[11, 12, 13, 14, 15]~. 
    52   Obtain all the multiples of three from the list ~num~.
    57 * Solution 2
    53 * Solution 2
    58   #+begin_src python
    54   #+begin_src python
    59     In []:  A[:] = [11, 12, 13, 14, 15]
    55     num[::3]  
    60   #+end_src
    56   #+end_src python
    61 * squares.png
       
    62   #+begin_latex
       
    63     \begin{center}
       
    64       \includegraphics[scale=0.6]{squares}    
       
    65     \end{center}
       
    66   #+end_latex
       
    67 * Question 3
    57 * Question 3
    68   - obtain ~[22, 23]~ from ~C~. 
    58   Given a list of marks of students in an examination, obtain a list
    69   - obtain ~[11, 21, 31, 41]~ from ~C~. 
    59   with marks in descending order.
    70   - obtain ~[21, 31, 41, 0]~.   
    60   #+begin_src python
       
    61     marks = [99, 67, 47, 100, 50, 75, 62]
       
    62   #+end_src python
    71 * Solution 3
    63 * Solution 3
    72   #+begin_src python
    64   #+begin_src python
    73     In []:  C[1, 1:3]
    65     sorted(marks)[::-1]
    74     In []:  C[0:4, 0]
    66   #+end_src python
    75     In []:  C[1:5, 0]
    67 OR
    76   #+end_src
       
    77 * Question 4
       
    78   Obtain ~[[23, 24], [33, -34]]~ from ~C~
       
    79 * Solution 4
       
    80   #+begin_src python
    68   #+begin_src python
    81     In []:  C[1:3, 2:4]
    69     sorted(marks, reverse=True)
    82   #+end_src
    70   #+end_src python
    83 * Question 5
       
    84   Obtain the square in the center of the image
       
    85 * Solution 5
       
    86   #+begin_src python
       
    87     In []: imshow(I[75:225, 75:225])
       
    88   #+end_src
       
    89 * Question 6
       
    90   Obtain the following
       
    91   #+begin_src python
       
    92     [[12, 0], [42, 0]]
       
    93     [[12, 13, 14], [0, 0, 0]]
       
    94   #+end_src
       
    95 
    71 
    96 * Solution 6
       
    97   #+begin_src python
       
    98     In []: C[::3, 1::3]
       
    99     In []: C[::4, 1:4]
       
   100   #+end_src
       
   101 * Summary
    72 * Summary
   102   You should now be able to --
    73   In this tutorial session we learnt
   103   - Manipulate 1D \& Multi dimensional arrays
    74     + Obtaining parts of lists using slicing and striding
   104       - Access and change individual elements 
    75     + List concatenation
   105       - Access and change rows and columns 
    76     + Sorting lists 
   106       - Slice and stride on arrays
    77     + Reversing lists
   107   - Read images into arrays and manipulate them.
    78 
   108 * Thank you!
    79 * Thank you!
   109 #+begin_latex
    80 #+begin_latex
   110   \begin{block}{}
    81   \begin{block}{}
   111   \begin{center}
    82   \begin{center}
   112   This spoken tutorial has been produced by the
    83   This spoken tutorial has been produced by the