EPOKA UNIVERSITY
FACULTY OF ECONOMICS AND ADMINISTRATIVE SCIENCES
DEPARTMENT OF BUSINESS ADMINISTRATION
COURSE SYLLABUS
2022-2023 ACADEMIC YEAR
COURSE INFORMATIONCourse Title: INTRODUCTION TO ALGORITHMS AND PROGRAMMING II |
Code | Course Type | Regular Semester | Theory | Practice | Lab | Credits | ECTS |
---|---|---|---|---|---|---|---|
CEN 114 | B | 2 | 2 | 0 | 2 | 3 | 5 |
Academic staff member responsible for the design of the course syllabus (name, surname, academic title/scientific degree, email address and signature) | NA |
Main Course Lecturer (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | Dr. Aida Bitri abitri@epoka.edu.al , Monday 14:30-15:30, Tuesday 14:30-15:30, Wednesday 11:30-13:30. |
Second Course Lecturer(s) (name, surname, academic title/scientific degree, email address and signature) and Office Hours: | M.Sc. Enesh Orazova eorazova@epoka.edu.al |
Teaching Assistant(s) and Office Hours: | NA |
Language: | English |
Compulsory/Elective: | Compulsory |
Study program: (the study for which this course is offered) | Bachelor in Business Informatics (3 years) |
Classroom and Meeting Time: | Monday, 09:45-11:30, E213 |
Code of Ethics: |
Code of Ethics of EPOKA University Regulation of EPOKA University "On Student Discipline" |
Attendance Requirement: | Mandatory |
Course Description: | The aim of this course is to introduce students to advanced concepts of Python Programming language. The students will learn how to retrieve and store data from files, design graphical user interfaces through Matplotlib, and analyze data using Numpy and Pandas. |
Course Objectives: | The objective of this course is to teach students advanced concepts of algorithms and programming in Python. - Students should be able to apply sorting and searching algorithms in python in different data structures. - Students should be able to input/output data from different sources in Python. - By the end of this course students should know how to use Matplotlib library and data visualization. - By the end of this course students should know how to use Numpy and Pandas libraries for data analysis. |
BASIC CONCEPTS OF THE COURSE
|
1 | Sorting algorithms |
2 | Dictionaries |
3 | Sets |
4 | 2D lists |
5 | Graphical User Interface |
6 | Numpy |
7 | Pandas |
8 | Data Visualisation |
9 | Matplotlib |
COURSE OUTLINE
|
Week | Topics |
1 | Introduction to course outline. Students are introduced to the main concepts that this courses focuses. |
2 | Dictionaries. This chapter introduces the dictionary and set data structures. The student learns to store data as key-value pairs in dictionaries, search for values, change existing values, add new key-value pairs, and delete key-value pairs. |
3 | Dictionaries II. This chapter introduces the dictionary and set data structures. The student learns to store values as unique elements in sets and perform common set operations such as union, intersection, difference, and symmetric difference. |
4 | Files and exceptions. This chapter introduces sequential file input and output. The student learns to read and write large sets of data and store data as fields and records. The chapter concludes by discussing exceptions and shows the student how to write exception-handling code. |
5 | 2D lists, different types of searching algorithms. During this chapter students will learn how to apply different searching algorithms in lists and 2D lists. |
6 | Sorting algorithms in Python. During this chapter students will learn how to apply different sorting algorithms in lists and 2D lists. |
7 | Input data from Web I. This chapter introduces the main concepts of using bots to extract content and data from a website. |
8 | Mid-Term |
9 | Web Scraping. This chapter introduces the main concepts of using bots to extract content and data from a website. |
10 | GUI- Python Programming. This chapter discusses the basic aspects of designing a GUI application. Fundamental widgets, such as labels, buttons, entry fields, radio buttons, check buttons, and dialog boxes, are covered |
11 | GUI - This chapter discusses Matplotlib library. Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. Python Programming Matplotlib II |
12 | Numpy. Students should be able to use Numpy library which is the core library for scientific computing in Python. It provides a high-performance multidimensional array object, and tools for working with these arrays. |
13 | Pandas. During this chapter students will learn how to manipulate and analyse data using Pandas library which acts as a wrapper over Numpy and Matplotlib libraries. |
14 | Review and Excercises |
Prerequisite(s): | - |
Textbook(s): | Tony Gaddis, Haywood Community College - Starting Out with Python, Global Edition, 5th Edition-Pearson (2021) David Amos, Dan Bader, Joanna Jablonski, Fletcher Heisler - Python Basics_ A Practical Introduction to Python 3-Real Python (2021) |
Additional Literature: | -Engr. Michael David - A Practical Introduction to Python Programming _ Hand-On Machine Learning With Python (2021) -Jim R. Parker - Python_ An Introduction to Programming-Mercury Learning and Information (2021) -John V. Guttag - Introduction to Computation and Programming Using Python-The MIT Press (2021) -Levitin, Anany - Introduction to the design and analysis of algorithms-Pearson (2019) -Publishing, AI - Python Pandas for Beginners_ Pandas Specialization for Data Scientist (Python for Beginners in Data Science and Data Analysis Book 2)-AI Publishing LLC (2021) -Cajic, Dino - An Illustrative Introduction to Algorithms (2019) |
Laboratory Work: | Yes |
Computer Usage: | Yes |
Others: | No |
COURSE LEARNING OUTCOMES
|
1 | To apply advanced algorithms in data structures |
2 | To apply dictionaries in real world problems |
3 | To input and output data from different sources, such as; files and web. |
4 | To apply data visualisation using Matplotlib |
5 | To apply Numpy library for data analysis |
6 | To apply Pandas library for data manipulation and analysis |
COURSE CONTRIBUTION TO... PROGRAM COMPETENCIES
(Blank : no contribution, 1: least contribution ... 5: highest contribution) |
No | Program Competencies | Cont. |
Bachelor in Business Informatics (3 years) Program | ||
1 | Identify activities, tasks, and skills in management, marketing, accounting, finance, and economics. | 5 |
2 | Apply key theories to practical problems within the global business context. | 5 |
3 | Demonstrate ethical, social, and legal responsibilities in organizations. | 5 |
4 | Develop an open minded-attitude through continuous learning and team-work. | 5 |
5 | Integrate different skills and approaches to be used in decision making and data management. | 5 |
6 | Combine computer skills with managerial skills, in the analysis of large amounts of data. | 5 |
7 | Provide solutions to complex information technology problems. | 5 |
8 | Recognize, analyze, and suggest various types of information-communication systems/services that are encountered in everyday life and in the business world. | 5 |
COURSE EVALUATION METHOD
|
Method | Quantity | Percentage |
Midterm Exam(s) |
1
|
30
|
Final Exam |
1
|
40
|
Other |
1
|
30
|
Total Percent: | 100% |
ECTS (ALLOCATED BASED ON STUDENT WORKLOAD)
|
Activities | Quantity | Duration(Hours) | Total Workload(Hours) |
Course Duration (Including the exam week: 16x Total course hours) | 16 | 3 | 48 |
Hours for off-the-classroom study (Pre-study, practice) | 16 | 2 | 32 |
Mid-terms | 1 | 10 | 10 |
Assignments | 0 | ||
Final examination | 1 | 15 | 15 |
Other | 1 | 20 | 20 |
Total Work Load:
|
125 | ||
Total Work Load/25(h):
|
5 | ||
ECTS Credit of the Course:
|
5 |
CONCLUDING REMARKS BY THE COURSE LECTURER
|
Students caught with plagiarism or receive a misbehavior report during lectures, labs, and exams will be automatically graded 0 points. |