An open API service indexing awesome lists of open source software.

https://github.com/n-sapkota/dsma-113-python-programming

This repository is for DSMA 113: Introduction to Python Programming at Kathmandu University. The course introduces foundational Python concepts, including syntax, data structures, object-oriented programming, and essential libraries like NumPy, Pandas, and Matplotlib.
https://github.com/n-sapkota/dsma-113-python-programming

data-science jupyter-notebook machine-learning python3

Last synced: 3 months ago
JSON representation

This repository is for DSMA 113: Introduction to Python Programming at Kathmandu University. The course introduces foundational Python concepts, including syntax, data structures, object-oriented programming, and essential libraries like NumPy, Pandas, and Matplotlib.

Awesome Lists containing this project

README

        

# DSMA 113: Introduction to Python Programming

Welcome to the official repository for **DSMA 113: Introduction to Python Programming**, part of the **Bachelor in Data Science program** at **Kathmandu University**. This course provides a comprehensive foundation in Python, covering fundamental programming concepts, data structures, object-oriented principles, and essential libraries for data science.

---

## Course Information

- **Course Code:** DSMA 113
- **Credits:** 3
- **Lecture Hours:** 45
- **Institution:** Kathmandu University
- **Program:** Bachelor in Data Science

---

## Course Objectives

By the end of this course, students will be able to:

- Understand essential programming concepts: syntax, data types, variables, operators.
- Develop efficient algorithms and apply computational thinking.
- Utilize Python’s built-in data structures (lists, tuples, dictionaries, sets).
- Implement object-oriented programming (OOP) concepts.
- Handle files for reading/writing operations.
- Utilize popular Python libraries like **NumPy**, **Pandas**, and **Matplotlib** for data manipulation and visualization.

---

## Course Outline

### Unit 1: Introduction
- Overview of Python, installation, using IDLE and Jupyter Notebook
- Virtual environments, comments, indentation, tokens, operators

### Unit 2: Decision and Loops
- **Conditional Statements:** `if`, `if-else`, `if-elif-else`
- **Looping Statements:** `for`, `while`
- **Exception Handling**

### Unit 3: Built-In Data Types
- **Numerics, Strings, Lists, Tuples, Sets, Dictionaries**

### Unit 4: Functions
- Benefits, creation, argument handling, lambda and recursive functions

### Unit 5: Object-Oriented Programming (OOP)
- Classes, encapsulation, inheritance, polymorphism, data hiding

### Unit 6: File Handling
- File modes, reading/writing, `os` module

### Unit 7: Common Python Libraries
- **NumPy:** Arrays, indexing, broadcasting, statistical functions
- **Pandas:** DataFrames, indexing, missing data, merging, CSVs
- **Matplotlib:** Plotting and visualization (scatter, bar, histogram, etc.)

### Unit 8: Developing a Project
- Project design, module decomposition, data flow diagrams

---

## Laboratory Work and Final Project

This repository contains lab exercises for each course unit. The final project will apply skills learned throughout the course. Project ideas include:

1. **Exploratory Data Analysis (EDA):** Analyzing datasets to uncover patterns.
2. **Regression Analysis:** Implementing regression models for predicting outcomes.

---