Files
fdp-data-science-pipeline/fdp-colab-content/pre_read.html

397 lines
15 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
@page {
size: A4;
margin: 2cm 1.8cm;
}
@page cover {
margin: 0;
@top-left { content: none; }
@top-right { content: none; }
@bottom-center { content: none; }
}
@page back {
margin: 0;
@top-left { content: none; }
@top-right { content: none; }
@bottom-center { content: none; }
}
* { box-sizing: border-box; margin: 0; padding: 0; }
/* ===== COVER ===== */
.cover-page {
page: cover;
width: 210mm; height: 297mm;
background: #2b2d42;
display: flex; flex-direction: column; justify-content: center; align-items: center;
padding: 30mm 20mm; text-align: center;
position: relative; overflow: hidden;
}
.cover-page::before {
content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0;
background: linear-gradient(135deg, rgba(138,180,248,0.05) 0%, transparent 50%);
}
.cover-page h1 {
color: #ffffff; font-size: 28pt; font-weight: 700;
letter-spacing: 1px; margin-bottom: 6mm;
font-family: 'Segoe UI', 'Helvetica Neue', sans-serif;
}
.cover-page .subtitle {
color: #8ab4f8; font-size: 14pt; font-weight: 400;
margin-bottom: 12mm; letter-spacing: 0.5px;
font-family: 'Segoe UI', 'Helvetica Neue', sans-serif;
}
.cover-page .divider {
width: 60mm; height: 2px; background: #8ab4f8; margin: 0 auto 10mm;
}
.cover-page .meta {
color: #b0b8c5; font-size: 10pt; line-height: 2;
font-family: 'Segoe UI', 'Helvetica Neue', sans-serif;
}
.cover-page .meta strong { color: #d3d7e0; }
.cover-page .footer-note {
position: absolute; bottom: 18mm;
color: #6c7384; font-size: 8pt;
font-family: 'Segoe UI', 'Helvetica Neue', sans-serif;
}
/* ===== CONTENT PAGES ===== */
body { font-family: 'Segoe UI', 'Helvetica Neue', sans-serif; color: #2d3748; font-size: 10pt; line-height: 1.6; }
.content-page { padding: 0; page-break-after: always; }
h2 {
color: #2b2d42; font-size: 16pt; font-weight: 700;
border-bottom: 2px solid #8ab4f8; padding-bottom: 4mm; margin-bottom: 6mm;
}
h3 {
color: #4a5568; font-size: 12pt; font-weight: 600;
margin-top: 6mm; margin-bottom: 3mm;
}
p { margin-bottom: 3mm; }
ul, ol { margin: 3mm 0 4mm 6mm; }
li { margin-bottom: 2mm; }
.highlight-box {
background: #f0f4ff; border-left: 4px solid #8ab4f8;
padding: 4mm 5mm; margin: 4mm 0; border-radius: 0 4px 4px 0;
}
.highlight-box strong { color: #2b2d42; }
.tip-box {
background: #fff8e7; border-left: 4px solid #f0ad4e;
padding: 4mm 5mm; margin: 4mm 0; border-radius: 0 4px 4px 0;
}
.tip-box strong { color: #8a6d3b; }
table {
width: 100%; border-collapse: collapse; margin: 4mm 0; font-size: 9pt;
}
th {
background: #2b2d42; color: #fff; padding: 3mm 4mm; text-align: left; font-weight: 600;
}
td {
padding: 3mm 4mm; border-bottom: 1px solid #e2e8f0;
}
tr:nth-child(even) td { background: #f7fafc; }
code {
background: #edf2f7; color: #2b2d42; padding: 1px 4px;
border-radius: 3px; font-size: 9pt; font-family: 'Consolas', 'Courier New', monospace;
}
pre {
background: #1a202c; color: #e2e8f0; padding: 4mm;
border-radius: 4px; font-size: 8.5pt; line-height: 1.4;
overflow-x: auto; margin: 4mm 0;
font-family: 'Consolas', 'Courier New', monospace;
}
.page-footer {
text-align: center; color: #a0aec0; font-size: 7.5pt;
border-top: 1px solid #e2e8f0; padding-top: 3mm; margin-top: 6mm;
}
.header-meta {
color: #a0aec0; font-size: 8pt; text-align: right;
margin-bottom: 2mm; border-bottom: 1px solid #edf2f7; padding-bottom: 1mm;
}
/* ===== BACK PAGE ===== */
.back-page {
page: back;
width: 210mm; height: 297mm;
background: #4a5568;
display: flex; flex-direction: column; justify-content: center; align-items: center;
padding: 30mm; text-align: center;
}
.back-page h2 {
color: #ffffff; font-size: 16pt; font-weight: 600; border: none; margin-bottom: 6mm;
}
.back-page p {
color: #c0c8d0; font-size: 10pt; line-height: 2;
}
.back-page .brand {
color: #8ab4f8; font-size: 11pt; font-weight: 600; margin-top: 8mm;
}
</style>
</head>
<body>
<!-- ===== COVER ===== -->
<section class="cover-page">
<h1>FDP Pre-Read Material</h1>
<p class="subtitle">Data Science Pipeline &mdash; Hands-on with Google Colab</p>
<div class="divider"></div>
<p class="meta">
<strong>Speaker:</strong> Kapil Panwar<br>
<strong>Organization:</strong> Gyannetra Pvt Ltd, Pune<br>
<strong>Date:</strong> 30 May 2026<br>
<strong>Venue:</strong> JIET, Jodhpur
</p>
<p class="footer-note">Pre-Read &bull; Please go through before the session</p>
</section>
<!-- ===== PAGE 1: Introduction ===== -->
<section class="content-page">
<div class="header-meta">FDP Pre-Read &bull; Data Science Pipeline</div>
<h2>1. Introduction</h2>
<p>
Welcome to the <strong>Data Science Pipeline</strong> Faculty Development Program session!
This pre-read document will prepare you for a completely hands-on, no-installation-needed workshop.
</p>
<div class="highlight-box">
<strong>Good News:</strong> You do <em>not</em> need to install Python, Docker, or any software on your laptop.
Everything runs in your browser via <strong>Google Colab</strong>.
</div>
<h3>What is a Data Science Pipeline?</h3>
<p>
A Data Science Pipeline is the end-to-end process of taking raw data and transforming it into
actionable insights. The standard pipeline has these stages:
</p>
<ol>
<li><strong>Data Collection</strong> &ndash; Gathering data from CSV, databases, APIs, etc.</li>
<li><strong>Data Cleaning &amp; Preprocessing</strong> &ndash; Handling missing values, fixing data types</li>
<li><strong>Feature Engineering</strong> &ndash; Creating new features, encoding categorical variables</li>
<li><strong>Exploratory Data Analysis (EDA)</strong> &ndash; Visualizing patterns and relationships</li>
<li><strong>Model Training</strong> &ndash; Applying machine learning algorithms</li>
<li><strong>Evaluation</strong> &ndash; Measuring how well the model performs</li>
<li><strong>Interpretation</strong> &ndash; Understanding what the model tells us</li>
</ol>
<div class="tip-box">
<strong>Session Tip:</strong> Don't worry if some terms feel new. The session is designed for
beginners. Just bring curiosity and a working internet connection.
</div>
<div class="page-footer">Page 1</div>
</section>
<!-- ===== PAGE 2: Google Colab ===== -->
<section class="content-page">
<div class="header-meta">FDP Pre-Read &bull; Data Science Pipeline</div>
<h2>2. Google Colab &mdash; Your Browser-Based Lab</h2>
<p>
<strong>Google Colaboratory (Colab)</strong> is a free, cloud-based Jupyter notebook environment
that runs entirely in your browser. No installation. No setup.
</p>
<h3>Why Colab for this FDP?</h3>
<ul>
<li>✅ <strong>Zero setup</strong> &ndash; Works on any laptop (i3, i5, any OS)</li>
<li>✅ <strong>Free GPU/CPU</strong> &ndash; Google servers do the heavy lifting</li>
<li>✅ <strong>Pre-written code</strong> &ndash; Just run each cell with Shift+Enter</li>
<li>✅ <strong>Auto-saves to your Google Drive</strong></li>
<li>✅ <strong>Works offline</strong> after initial load</li>
</ul>
<h3>How to Open a Colab Notebook</h3>
<ol>
<li>Open your browser (Chrome / Firefox recommended)</li>
<li>Go to <code>colab.research.google.com</code></li>
<li>Click <strong>File &rarr; Upload Notebook</strong></li>
<li>Select the <code>.ipynb</code> file we share during the session</li>
</ol>
<div class="highlight-box">
<strong>Shortcut:</strong> We will also share a direct Colab link &mdash; just click and it opens
automatically. No upload needed.
</div>
<h3>Colab Cell Types</h3>
<table>
<tr><th>Cell Type</th><th>Use</th><th>Example</th></tr>
<tr><td>Code Cell</td><td>Runs Python code</td><td><code>print("Hello")</code></td></tr>
<tr><td>Text Cell</td><td>Markdown documentation</td><td>Explanations, headings</td></tr>
</table>
<div class="page-footer">Page 2</div>
</section>
<!-- ===== PAGE 3: Categorical Data & One-Hot Encoding ===== -->
<section class="content-page">
<div class="header-meta">FDP Pre-Read &bull; Data Science Pipeline</div>
<h2>3. Categorical Data &amp; One-Hot Encoding</h2>
<h3>What is Categorical Data?</h3>
<p>
Categorical data represents groups or categories rather than numbers. Examples: Department
(Science, Commerce), Gender (Male, Female), or <strong>Favorite Color</strong> (Red, Blue, Green).
</p>
<p>
Machine learning models understand only <em>numbers</em>. So we must convert text categories to
numbers. This is called <strong>encoding</strong>.
</p>
<h3>The Problem with Simple Numbering</h3>
<p>
If we encode Red=1, Blue=2, Green=3, the model might think Green &gt; Blue &gt; Red (i.e.,
order/ranking). But colors have <em>no inherent order</em>. This is why we use one-hot encoding.
</p>
<h3>How One-Hot Encoding Works</h3>
<p>
One-hot encoding creates a separate column for <em>each category</em>, with 1 (present) or 0 (absent).
</p>
<table>
<tr><th>Original</th><th>Red</th><th>Blue</th><th>Green</th><th>Yellow</th></tr>
<tr><td>Red</td><td>1</td><td>0</td><td>0</td><td>0</td></tr>
<tr><td>Blue</td><td>0</td><td>1</td><td>0</td><td>0</td></tr>
<tr><td>Green</td><td>0</td><td>0</td><td>1</td><td>0</td></tr>
<tr><td>Yellow</td><td>0</td><td>0</td><td>0</td><td>1</td></tr>
</table>
<p>In Python with pandas, it's just one line:</p>
<pre>import pandas as pd
encoded = pd.get_dummies(df['Favorite_Color'], prefix='Color')</pre>
<div class="tip-box">
<strong>Visual Memory Aid:</strong> Think of one-hot like a light switch panel &mdash;
each color has its own switch, and exactly one switch is ON at a time.
</div>
<div class="page-footer">Page 3</div>
</section>
<!-- ===== PAGE 4: Dataset & Session Outline ===== -->
<section class="content-page">
<div class="header-meta">FDP Pre-Read &bull; Data Science Pipeline</div>
<h2>4. Session Dataset &mdash; Student Stress Prediction</h2>
<p>
During the session, we will use a dataset about <strong>college student stress levels</strong>.
This dataset is specially designed to be relatable for faculty members.
</p>
<table>
<tr><th>Feature</th><th>Type</th><th>Description</th><th>Example</th></tr>
<tr><td>Department</td><td>Categorical</td><td>Student's department</td><td>Science, Arts, Commerce, Engineering</td></tr>
<tr><td>Attendance Level</td><td>Categorical</td><td>Attendance category</td><td>Regular, Irregular, Borderline</td></tr>
<tr><td>Favorite Color</td><td>Categorical</td><td>Self-reported favorite color 🌈</td><td>Red, Blue, Green, Yellow, Purple, Orange</td></tr>
<tr><td>Weekly Study Hours</td><td>Numerical</td><td>Hours studied per week</td><td>2 &ndash; 25 hours</td></tr>
<tr><td>Assignment Submission %</td><td>Numerical</td><td>Assignment submission rate</td><td>40% &ndash; 100%</td></tr>
<tr><td>Backlogs Count</td><td>Numerical</td><td>Number of pending backlogs</td><td>0 &ndash; 5</td></tr>
<tr><td>Stress Level</td><td>Binary (Target)</td><td>0 = Low Stress, 1 = High Stress</td><td>0 or 1</td></tr>
</table>
<h3>Session Outline (Hands-On)</h3>
<ol>
<li><strong>Open Colab &amp; Load Data</strong> &mdash; 5 min</li>
<li><strong>Explore the Data (EDA)</strong> &mdash; 10 min</li>
<li><strong>One-Hot Encode Categorical Columns</strong> &mdash; 10 min</li>
<li><strong>Train a Machine Learning Model</strong> &mdash; 10 min</li>
<li><strong>Evaluate &amp; Interpret Results</strong> &mdash; 10 min</li>
<li><strong>Q&amp;A / Open Discussion</strong> &mdash; 10 min</li>
</ol>
<p><strong>Total:</strong> ~55 minutes</p>
<div class="highlight-box">
<strong>No prior coding experience needed.</strong> All code is pre-written.
You just click "Run" and watch the magic happen.
</div>
<h3>What You Will Learn</h3>
<ul>
<li>✅ How to load and view data in Python</li>
<li>✅ How to handle categorical data (one-hot encoding with colors!)</li>
<li>✅ How to train a simple ML model</li>
<li>✅ How to check if the model is accurate</li>
<li>✅ How these skills apply to your own courses &amp; research</li>
</ul>
<div class="page-footer">Page 4</div>
</section>
<!-- ===== PAGE 5: Quick Reference ===== -->
<section class="content-page">
<div class="header-meta">FDP Pre-Read &bull; Data Science Pipeline</div>
<h2>5. Quick Reference &mdash; Python &amp; Colab Cheatsheet</h2>
<h3>Common Colab Shortcuts</h3>
<table>
<tr><th>Action</th><th>Shortcut</th></tr>
<tr><td>Run current cell</td><td><code>Shift + Enter</code></td></tr>
<tr><td>Add a code cell</td><td>Click <strong>+ Code</strong> button</td></tr>
<tr><td>Add a text cell</td><td>Click <strong>+ Text</strong> button</td></tr>
<tr><td>Delete a cell</td><td>Click cell &rarr; Trash icon (top-right)</td></tr>
<tr><td>Toggle cell output</td><td>Double-click output area</td></tr>
</table>
<h3>Key Python Commands We'll Use</h3>
<table>
<tr><th>Command</th><th>What it does</th></tr>
<tr><td><code>df.head()</code></td><td>Show first 5 rows of data</td></tr>
<tr><td><code>df.info()</code></td><td>Show data types and missing values</td></tr>
<tr><td><code>df.describe()</code></td><td>Show statistical summary</td></tr>
<tr><td><code>df['col'].value_counts()</code></td><td>Count unique values in a column</td></tr>
<tr><td><code>pd.get_dummies()</code></td><td>One-hot encode categorical columns</td></tr>
<tr><td><code>train_test_split()</code></td><td>Split data into train/test</td></tr>
<tr><td><code>RandomForestClassifier()</code></td><td>Create a Random Forest model</td></tr>
<tr><td><code>accuracy_score()</code></td><td>Calculate model accuracy</td></tr>
</table>
<h3>Before the Session, Please:</h3>
<ul>
<li>✅ Ensure you have a working internet connection</li>
<li>✅ Have a Google account (Gmail) logged in your browser</li>
<li>✅ Open Chrome / Firefox browser (latest version)</li>
<li>✅ Keep this pre-read handy for reference</li>
</ul>
<div class="highlight-box">
<strong>See you at the session!</strong> If you have questions beforehand, please reach out
via the FDP coordination team. We're here to help.
</div>
<div class="page-footer">Page 5</div>
</section>
<!-- ===== BACK PAGE ===== -->
<section class="back-page">
<h2>See You at the Session!</h2>
<p>
Data Science Pipeline &bull; 30 May 2026 &bull; JIET Jodhpur
</p>
<p>
<strong>Kapil Panwar</strong><br>
Gyannetra Pvt Ltd, Pune, Maharashtra<br>
<span class="brand">Gyannetra &mdash; India's Premier AI Consultancy</span>
</p>
</section>
</body>
</html>