| author | Madhusudan.C.S <madhusudancs@gmail.com> |
| Tue, 27 Oct 2009 15:34:43 +0530 | |
| changeset 190 | 3068ec210c51 |
| parent 185 | e59ab9ab1a89 |
| child 192 | 1574b3bc6be7 |
| child 199 | 85a799d90c6a |
| permissions | -rw-r--r-- |
| 115 | 1 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
142
57e0f0fd3317
Made usage of FOSSEE consistent, in comments also.
Puneeth Chaganti <punchagan@fossee.in>
parents:
137
diff
changeset
|
2 |
%Tutorial slides on Python. |
| 115 | 3 |
% |
|
142
57e0f0fd3317
Made usage of FOSSEE consistent, in comments also.
Puneeth Chaganti <punchagan@fossee.in>
parents:
137
diff
changeset
|
4 |
% Author: FOSSEE |
|
57e0f0fd3317
Made usage of FOSSEE consistent, in comments also.
Puneeth Chaganti <punchagan@fossee.in>
parents:
137
diff
changeset
|
5 |
% Copyright (c) 2009, FOSSEE, IIT Bombay |
| 115 | 6 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
7 |
||
8 |
\documentclass[14pt,compress]{beamer}
|
|
9 |
%\documentclass[draft]{beamer}
|
|
10 |
%\documentclass[compress,handout]{beamer}
|
|
11 |
%\usepackage{pgfpages}
|
|
12 |
%\pgfpagesuselayout{2 on 1}[a4paper,border shrink=5mm]
|
|
13 |
||
14 |
% Modified from: generic-ornate-15min-45min.de.tex |
|
15 |
\mode<presentation> |
|
16 |
{
|
|
17 |
\usetheme{Warsaw}
|
|
18 |
\useoutertheme{split}
|
|
19 |
\setbeamercovered{transparent}
|
|
20 |
} |
|
21 |
||
22 |
\usepackage[english]{babel}
|
|
23 |
\usepackage[latin1]{inputenc}
|
|
24 |
%\usepackage{times}
|
|
25 |
\usepackage[T1]{fontenc}
|
|
26 |
||
27 |
% Taken from Fernando's slides. |
|
28 |
\usepackage{ae,aecompl}
|
|
29 |
\usepackage{mathpazo,courier,euler}
|
|
30 |
\usepackage[scaled=.95]{helvet}
|
|
|
116
cb91f43d2cbb
Added Least Square Fitting to Session3.
Puneeth Chaganti <punchagan@fossee.in>
parents:
115
diff
changeset
|
31 |
\usepackage{amsmath}
|
| 115 | 32 |
|
33 |
\definecolor{darkgreen}{rgb}{0,0.5,0}
|
|
34 |
||
35 |
\usepackage{listings}
|
|
36 |
\lstset{language=Python,
|
|
37 |
basicstyle=\ttfamily\bfseries, |
|
38 |
commentstyle=\color{red}\itshape,
|
|
39 |
stringstyle=\color{darkgreen},
|
|
40 |
showstringspaces=false, |
|
41 |
keywordstyle=\color{blue}\bfseries}
|
|
42 |
||
43 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
44 |
% Macros |
|
45 |
\setbeamercolor{emphbar}{bg=blue!20, fg=black}
|
|
46 |
\newcommand{\emphbar}[1]
|
|
47 |
{\begin{beamercolorbox}[rounded=true]{emphbar}
|
|
48 |
{#1}
|
|
49 |
\end{beamercolorbox}
|
|
50 |
} |
|
51 |
\newcounter{time}
|
|
52 |
\setcounter{time}{0}
|
|
53 |
\newcommand{\inctime}[1]{\addtocounter{time}{#1}{\tiny \thetime\ m}}
|
|
54 |
||
55 |
\newcommand{\typ}[1]{\lstinline{#1}}
|
|
56 |
||
57 |
\newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}} }
|
|
58 |
||
59 |
%%% This is from Fernando's setup. |
|
60 |
% \usepackage{color}
|
|
61 |
% \definecolor{orange}{cmyk}{0,0.4,0.8,0.2}
|
|
62 |
% % Use and configure listings package for nicely formatted code |
|
63 |
% \usepackage{listings}
|
|
64 |
% \lstset{
|
|
65 |
% language=Python, |
|
66 |
% basicstyle=\small\ttfamily, |
|
67 |
% commentstyle=\ttfamily\color{blue},
|
|
68 |
% stringstyle=\ttfamily\color{orange},
|
|
69 |
% showstringspaces=false, |
|
70 |
% breaklines=true, |
|
71 |
% postbreak = \space\dots |
|
72 |
% } |
|
73 |
||
74 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
75 |
% Title page |
|
|
164
b03c0d1be31f
Changed Least squares fit in session3.
Puneeth Chaganti <punchagan@fossee.in>
parents:
161
diff
changeset
|
76 |
\title[]{Least Squares Fit\\Statistical Plotting}
|
| 115 | 77 |
|
78 |
\author[FOSSEE] {FOSSEE}
|
|
79 |
||
80 |
\institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay}
|
|
|
131
b3a78754c4a9
Minor edits to day1 session4.
Puneeth Chaganti <punchagan@fossee.in>
parents:
125
diff
changeset
|
81 |
\date[] {31, October 2009\\Day 1, Session 3}
|
| 115 | 82 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
83 |
||
84 |
%\pgfdeclareimage[height=0.75cm]{iitmlogo}{iitmlogo}
|
|
85 |
%\logo{\pgfuseimage{iitmlogo}}
|
|
86 |
||
87 |
||
88 |
%% Delete this, if you do not want the table of contents to pop up at |
|
89 |
%% the beginning of each subsection: |
|
90 |
\AtBeginSubsection[] |
|
91 |
{
|
|
92 |
\begin{frame}<beamer>
|
|
93 |
\frametitle{Outline}
|
|
94 |
\tableofcontents[currentsection,currentsubsection] |
|
95 |
\end{frame}
|
|
96 |
} |
|
97 |
||
98 |
\AtBeginSection[] |
|
99 |
{
|
|
100 |
\begin{frame}<beamer>
|
|
101 |
\frametitle{Outline}
|
|
102 |
\tableofcontents[currentsection,currentsubsection] |
|
103 |
\end{frame}
|
|
104 |
} |
|
105 |
||
106 |
\newcommand{\num}{\texttt{numpy}}
|
|
107 |
||
108 |
||
109 |
% If you wish to uncover everything in a step-wise fashion, uncomment |
|
110 |
% the following command: |
|
111 |
%\beamerdefaultoverlayspecification{<+->}
|
|
112 |
||
113 |
%\includeonlyframes{current,current1,current2,current3,current4,current5,current6}
|
|
114 |
||
115 |
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
116 |
% DOCUMENT STARTS |
|
117 |
\begin{document}
|
|
118 |
||
119 |
\begin{frame}
|
|
120 |
\maketitle |
|
121 |
\end{frame}
|
|
122 |
||
123 |
%% \begin{frame}
|
|
124 |
%% \frametitle{Outline}
|
|
125 |
%% \tableofcontents |
|
126 |
%% % You might wish to add the option [pausesections] |
|
127 |
%% \end{frame}
|
|
128 |
||
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
129 |
\begin{frame}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
130 |
\frametitle{More on data processing}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
131 |
\begin{block}{}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
132 |
What do we do if we want to draw Pie charts for the data in a huge data file? |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
133 |
\end{block}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
134 |
\end{frame}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
135 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
136 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
137 |
\begin{frame}
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
138 |
\frametitle{Statistical Analysis and Parsing}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
139 |
Read the data supplied in \emph{sslc1.txt} and obtain the following statistics:
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
140 |
\begin{itemize}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
141 |
\item Draw a pie chart representing the number of students who scored more than 90\% in Science per region. |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
142 |
\item Draw a pie chart representing the number of students who scored more than 90\% per subject(All regions combined). |
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
143 |
\end{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
144 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
145 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
146 |
\begin{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
147 |
\frametitle{Statistical Analysis and Parsing \ldots}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
148 |
Machinery Required - |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
149 |
\begin{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
150 |
\item File reading and parsing |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
151 |
\item Dictionaries |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
152 |
\end{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
153 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
154 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
155 |
\begin{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
156 |
\frametitle{File reading and parsing}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
157 |
Understanding the structure of sslc1.txt |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
158 |
\begin{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
159 |
\item Each line in the file, i.e each row of a file is a single record. |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
160 |
\item Each record corresponds to a record of a single student |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
161 |
\item Each record consists of several fields separated by a ';' |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
162 |
\end{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
163 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
164 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
165 |
\begin{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
166 |
\frametitle{File reading and parsing \ldots}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
167 |
Each record consists of: |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
168 |
\begin{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
169 |
\item Region Code |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
170 |
\item Roll Number |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
171 |
\item Name |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
172 |
\item Marks of 5 subjects |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
173 |
\item Total marks |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
174 |
\item Pass (P) |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
175 |
\item Withdrawn (W) |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
176 |
\item Fail (F) |
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
177 |
\end{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
178 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
179 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
180 |
\begin{frame}[fragile]
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
181 |
\frametitle{File reading and parsing \ldots}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
182 |
\begin{lstlisting}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
183 |
for record in open('sslc1.txt'):
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
184 |
fields = record.split(';')
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
185 |
\end{lstlisting}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
186 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
187 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
188 |
\begin{frame}[fragile]
|
|
166
ddfd95133adc
Taken task based approach for Session 3, day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
161
diff
changeset
|
189 |
\frametitle{Dictionary - Building parsed data}
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
190 |
\begin{itemize}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
191 |
\item Let the parsed data be stored in list of dictionaries. |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
192 |
\item d = \{\} is an empty dictionary
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
193 |
\end{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
194 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
195 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
196 |
\begin{frame}[fragile]
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
197 |
\frametitle{Dictionary - Building parsed data}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
198 |
\begin{lstlisting}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
199 |
ninety_percents = [{}, {}, {}, {}, {}]
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
200 |
\end{lstlisting}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
201 |
\end{frame}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
202 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
203 |
\begin{frame}[fragile]
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
204 |
\frametitle{Dictionary - Building parsed data}
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
205 |
\begin{itemize}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
206 |
\item Index of a dictionary is called a \emph{key}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
207 |
\item \emph{Keys} of these dictionaries are strings - region codes
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
208 |
\end{itemize}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
209 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
210 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
211 |
\begin{frame}[fragile]
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
212 |
\frametitle{Dictionary - Building parsed data \ldots}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
213 |
\begin{itemize}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
214 |
\item Value of a \emph{key} can be any legal Python value
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
215 |
\item In this problem let the value of a \emph{key} be another an integer
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
216 |
\item This dictionary contains: |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
217 |
\end{itemize}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
218 |
'region code': Number of students who scored more than 90\% in this region for this subject |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
219 |
\end{frame}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
220 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
221 |
\begin{frame}[fragile]
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
222 |
\frametitle{Building parsed data \ldots}
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
223 |
\begin{lstlisting}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
224 |
from pylab import * |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
225 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
226 |
ninety_percents = [{}, {}, {}, {}, {}]
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
227 |
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
228 |
for record in open('sslc1.txt'):
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
229 |
record = record.strip() |
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
230 |
fields = record.split(';')
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
231 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
232 |
region_code = fields[0].strip() |
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
233 |
\end{lstlisting}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
234 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
235 |
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
236 |
\begin{frame}[fragile]
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
237 |
\frametitle{Building parsed data \ldots}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
238 |
\small |
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
239 |
\begin{lstlisting}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
240 |
for i, field in enumerate(fields[3:8]): |
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
241 |
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
242 |
if region_code not in ninety_percents[i]: |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
243 |
ninety_percents[i][region_code] = 0 |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
244 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
245 |
score_str = field.strip() |
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
246 |
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
247 |
score = 0 if score_str == 'AA' else |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
248 |
int(score_str) |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
249 |
if score > 90: |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
250 |
ninety_percents[i][region_code] += 1 |
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
251 |
\end{lstlisting}
|
|
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
252 |
\end{frame}
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
253 |
|
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
254 |
\begin{frame}[fragile]
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
255 |
\frametitle{Consolidating data}
|
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
256 |
\begin{lstlisting}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
257 |
subj_total = [] |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
258 |
for subject in ninety_percents: |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
259 |
subj_total.append(sum( |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
260 |
subject.values())) |
|
170
36ed5cdf5fde
Reorganized the slides for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
167
diff
changeset
|
261 |
\end{lstlisting}
|
|
36ed5cdf5fde
Reorganized the slides for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
167
diff
changeset
|
262 |
\end{frame}
|
|
36ed5cdf5fde
Reorganized the slides for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
167
diff
changeset
|
263 |
|
|
36ed5cdf5fde
Reorganized the slides for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
167
diff
changeset
|
264 |
\begin{frame}[fragile]
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
265 |
\frametitle{Pie charts}
|
|
125
99ca3cb18fd2
Session 3 Day 1, sslc data parsing obtaining statistics.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
120
diff
changeset
|
266 |
\small |
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
267 |
\begin{lstlisting}
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
268 |
figure(1) |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
269 |
pie(ninety_percents[4].values(), |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
270 |
labels=ninety_percents[1].keys()) |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
271 |
title('Students scoring 90% and above
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
272 |
in science by region') |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
273 |
savefig('/tmp/science.png')
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
274 |
\end{lstlisting}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
275 |
\begin{columns}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
276 |
\column{5.25\textwidth}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
277 |
\hspace*{1.1in}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
278 |
\includegraphics[height=2in, interpolate=true]{data/science}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
279 |
\column{0.8\textwidth}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
280 |
\end{columns}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
281 |
\end{frame}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
282 |
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
283 |
\begin{frame}[fragile]
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
284 |
\frametitle{Pie charts}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
285 |
\begin{lstlisting}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
286 |
figure(2) |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
287 |
pie(subj_total, labels=['English', |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
288 |
'Hindi', 'Maths', 'Science', |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
289 |
'Social']) |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
290 |
title('Students scoring more than
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
291 |
90% by subject(All regions |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
292 |
combined).') |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
293 |
savefig('/tmp/all_regions.png')
|
|
120
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
294 |
\end{lstlisting}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
295 |
\end{frame}
|
|
055b199c46c2
Added NumPy array operations to session3 day1 for sslc1.txt.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
117
diff
changeset
|
296 |
|
|
166
ddfd95133adc
Taken task based approach for Session 3, day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
161
diff
changeset
|
297 |
\begin{frame}[fragile]
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
298 |
\frametitle{Pie charts}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
299 |
\includegraphics[height=3in, interpolate=true]{data/all_regions}
|
|
166
ddfd95133adc
Taken task based approach for Session 3, day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
161
diff
changeset
|
300 |
\end{frame}
|
|
ddfd95133adc
Taken task based approach for Session 3, day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
161
diff
changeset
|
301 |
|
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
302 |
\begin{frame}[fragile]
|
|
178
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
303 |
\frametitle{Dealing with data whole-sale}
|
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
304 |
\begin{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
305 |
In []: for t in T: |
|
185
e59ab9ab1a89
Manual Merge with Mainline.
Puneeth Chaganti <punchagan@fossee.in>
parents:
184
diff
changeset
|
306 |
....: TSq.append(t*t) |
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
307 |
\end{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
308 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
309 |
\item This is not very efficient |
|
178
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
310 |
\item We are squaring element after element |
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
311 |
\item We use arrays to make this efficient |
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
312 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
313 |
\begin{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
314 |
In []: L = array(L) |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
315 |
In []: T = array(T) |
|
185
e59ab9ab1a89
Manual Merge with Mainline.
Puneeth Chaganti <punchagan@fossee.in>
parents:
184
diff
changeset
|
316 |
In []: TSq = T*T |
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
317 |
\end{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
318 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
319 |
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
320 |
\begin{frame}[fragile]
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
321 |
\frametitle{Arrays}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
322 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
323 |
\item \typ{T} and \typ{L} are now arrays
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
324 |
\item arrays are very efficient and powerful |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
325 |
\item Very easy to perform element-wise operations |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
326 |
\item \typ{+, -, *, /, \%}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
327 |
\item More about arrays later |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
328 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
329 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
330 |
|
|
178
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
331 |
\begin{frame}[fragile]
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
332 |
\frametitle{Least Squares Fit}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
333 |
\vspace{-0.15in}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
334 |
\begin{figure}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
335 |
\includegraphics[width=4in]{data/L-Tsq-Line.png}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
336 |
\end{figure}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
337 |
\end{frame}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
338 |
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
339 |
\begin{frame}[fragile]
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
340 |
\frametitle{Least Squares Fit}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
341 |
\vspace{-0.15in}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
342 |
\begin{figure}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
343 |
\includegraphics[width=4in]{data/least-sq-fit.png}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
344 |
\end{figure}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
345 |
\end{frame}
|
|
8a3a9d98fa84
Changed functions section and some minor edits.
Puneeth Chaganti <punchagan@fossee.in>
parents:
174
diff
changeset
|
346 |
|
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
347 |
\begin{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
348 |
\frametitle{Least Square Fit Curve}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
349 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
350 |
\item $T^2$ and $L$ have a linear relationship |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
351 |
\item Hence, Least Square Fit Curve is a line |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
352 |
\item we shall use the \typ{lstsq} function
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
353 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
354 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
355 |
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
356 |
\begin{frame}[fragile]
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
357 |
\frametitle{\typ{lstsq}}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
358 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
359 |
\item We need to fit a line through points for the equation $T^2 = m \cdot L+c$ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
360 |
\item The equation can be re-written as $T^2 = A \cdot p$ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
361 |
\item where A is |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
362 |
$\begin{bmatrix}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
363 |
L_1 & 1 \\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
364 |
L_2 & 1 \\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
365 |
\vdots & \vdots\\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
366 |
L_N & 1 \\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
367 |
\end{bmatrix}$
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
368 |
and p is |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
369 |
$\begin{bmatrix}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
370 |
m\\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
371 |
c\\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
372 |
\end{bmatrix}$
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
373 |
\item We need to find $p$ to plot the line |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
374 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
375 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
376 |
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
377 |
\begin{frame}[fragile]
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
378 |
\frametitle{Van der Monde Matrix}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
379 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
380 |
\item A is also called a Van der Monde matrix |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
381 |
\item It can be generated using \typ{vander}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
382 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
383 |
Van der Monde matrix of order M |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
384 |
\begin{equation*}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
385 |
\begin{bmatrix}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
386 |
l_1^{M-1} & \ldots & l_1 & 1 \\
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
387 |
l_2^{M-1} & \ldots &l_2 & 1 \\
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
388 |
\vdots & \ldots & \vdots & \vdots\\ |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
389 |
l_N^{M-1} & \ldots & l_N & 1 \\
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
390 |
\end{bmatrix}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
391 |
\end{equation*}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
392 |
\begin{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
393 |
In []: A = vander(L,2) |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
394 |
\end{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
395 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
396 |
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
397 |
\begin{frame}[fragile]
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
398 |
\frametitle{\typ{lstsq} \ldots}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
399 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
400 |
\item Now use the \typ{lstsq} function
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
401 |
\item Along with a lot of things, it returns the least squares solution |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
402 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
403 |
\begin{lstlisting}
|
|
185
e59ab9ab1a89
Manual Merge with Mainline.
Puneeth Chaganti <punchagan@fossee.in>
parents:
184
diff
changeset
|
404 |
In []: coef, res, r, s = lstsq(A,TSq) |
|
174
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
405 |
\end{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
406 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
407 |
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
408 |
\begin{frame}[fragile]
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
409 |
\frametitle{Least Square Fit Line \ldots}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
410 |
We get the points of the line from \typ{coef}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
411 |
\begin{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
412 |
In []: Tline = coef[0]*L + coef[1] |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
413 |
\end{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
414 |
\begin{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
415 |
\item Now plot Tline vs. L, to get the Least squares fit line. |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
416 |
\end{itemize}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
417 |
\begin{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
418 |
In []: plot(L, Tline) |
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
419 |
\end{lstlisting}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
420 |
\end{frame}
|
|
a43832c1edc2
Reordered Session 3 Day 1.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
170
diff
changeset
|
421 |
|
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
422 |
\begin{frame}[fragile]
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
423 |
\frametitle{What did we learn?}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
424 |
\begin{itemize}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
425 |
\item Dictionaries |
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
426 |
\item Drawing pie charts |
|
185
e59ab9ab1a89
Manual Merge with Mainline.
Puneeth Chaganti <punchagan@fossee.in>
parents:
184
diff
changeset
|
427 |
\item Arrays |
|
e59ab9ab1a89
Manual Merge with Mainline.
Puneeth Chaganti <punchagan@fossee.in>
parents:
184
diff
changeset
|
428 |
\item Least Square fitting |
|
e59ab9ab1a89
Manual Merge with Mainline.
Puneeth Chaganti <punchagan@fossee.in>
parents:
184
diff
changeset
|
429 |
\item Intro to Matrices |
|
184
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
430 |
\end{itemize}
|
|
9efa777af2e2
Reworked on Session 3 day 1 slides.
Madhusudan.C.S <madhusudancs@gmail.com>
parents:
178
diff
changeset
|
431 |
\end{frame}
|
| 115 | 432 |
\end{document}
|