課程簡介 Course Introduction
|
開課年度學期 Year / Term
|
113 學年度 第 1 學期
|
開課班級 Department
|
人文學院 教育人文藝術學院共選A
|
授課方式 Instructional Method
|
課堂教學 、 中文
|
課程電腦代號 Course Reference Number
|
101004
|
課程名稱(中文) Course Title(Chinese)
|
運算思維與程式設計
|
課程名稱(英文) Course Title(English)
|
Computational Thinking and Programming
|
學分數/時數 Credit Hours
|
2 /
2
|
必(選)修 Requirement / Elective Course
|
必修
|
授課老師 Instructor
|
孟淑慧
|
助教 Teaching Assistant
|
|
上課時間 Meeting Time
|
星期五,節次8、9
|
上課教室 Classroom
|
J304
|
Office Hours
|
|
獲獎及補助情形 Awards and Grants |
|
聯合國永續發展目標 (SDGs跨域類別) Sustainable Development Goals, SDGs |
SDGs 04.
|
優質教育:確保有教無類、公平以及高品質的教育,及提倡終身學習
|
SDGs 08.
|
合適的工作及經濟成長:促進包容且永續的經濟成長,讓每個人都有一份好工作
|
SDGs 17.
|
多元夥伴關係:建立多元夥伴關係,協力促進永續願景
|
|
課程目標 Learning Objectives
|
課程目標及內涵 (Course Objectives and Contents) 本課程目的在於培養學生運算思維與程式設計能力。在運算思維與邏輯設計的訓練過程中,使學生能發展出解決問題的策略、步驟、與流程;而在程式設計的學習過程中,導入以流程圖為基礎的程式設計教學方式,逐步教導學生瞭解程式語法結構,以提昇基礎程式語言實作能力。完成本課程後,學生將有能力自主學習程式語言,並進而能將其應用在所學的背景專業知識中。
|
先修 ( 前置 ) 課程 Prerequisite
|
無
|
彈性教學規劃 Flexible Teaching/Planning Schedules |
*本課程實施16+2週彈性教學方案,其中第17、18週之彈性規劃如下: |
|
課程大綱 Course Syllabus
|
週次 Week |
課程單元大綱 Unit |
教學方式 Instructional Method/Style/Teaching Style |
參考資料或相關作業 References or Related Materials |
評量方式 Grading |
1
|
第一週 Python 基礎回顧 ⚫ Python 基礎語法回顧 變數、資料型別 條件語句和迴圈 函數定義和調用 ⚫ Python 資料型別 列表、元組、字典、集合等 流程控制和函數 條件語句、迴圈、函數的進階應用
|
講述和實作
|
|
|
2
|
第二週 檔案的處理 ⚫ 開啟檔案的方法介紹 with open 與 open 的不同,模式介紹,如何建立資料夾,文字檔資料的寫入與讀取,CSV 檔案操作,使用 csv 套件
|
講述和實作
|
|
|
3
|
第三週 : Numpy 入門 ⚫ Numpy 介紹 ndarray 特徵、以連續的記憶體空間來儲存資料、由全部相同型別的元素組成、每個維度 的元素數量必須相同、建立陣列的方式 NumPy 多維陣列 : 二維及三維陣列切片,Dtype 的種類(不同作業系統可能不同)建立陣 列時可以自行指定資料型別 ⚫ ndarray 的屬性 語法:物件名稱.屬性名稱
|
實作
|
|
|
4
|
第四週 再談 Numpy ⚫ 常用數學函數
|
講述和實作
|
|
|
5
|
第五週 Pandas 入門 ⚫ Pandas 基礎介紹 基本資料型別,Series 和 DataFrame 物件 基本資料操作 資料索引和選擇
|
講述和實作
|
|
|
6
|
第六週 再談 Pandas ⚫ 選擇 如何選擇的子集 DataFrame、選擇特定的行和列 DataFrame、loc & iloc 的不同 ⚫ 簡單的資料結構 groupby()分組、sort_values(by=參數)#按值進行排序、如何增加 DataFrame 欄位 ⚫ 資料清理和預處理 缺失值處理、資料轉換和合併
|
實作
|
|
|
7
|
第七週 Pandas 進階與應用 ⚫ Pandas 資料清理與預處理 文本處理和正規化表達式 日期和時間處理 ⚫ Pandas 合併和組合資料 合併和連接操作 分組和聚合運算 ⚫ Pandas 應用案例 數據整合、分析和視覺化
|
實作
|
|
|
8
|
第八週 Scrapy 入門 ⚫ 網路爬蟲基礎 HTTP 請求和響應 爬蟲基本原理 ⚫ Scrapy 框架介紹 Scrapy 結構和組件、BeautifulSoup 與 requests 套件、Scrapy 爬蟲流程⚫ Response 物件
|
實作
|
|
|
9
|
期中考週
|
|
|
|
10
|
第十週 Scrapy 入門 ⚫ Scrapy 爬蟲實作 建立爬蟲項目 定義爬蟲規則和處理方式 【應用實例】-爬蟲 1.台鐵列車時刻查詢【應用實例】-爬蟲 2. 台灣證券交易所的台積電股價資料
|
實作
|
|
|
11
|
第十一週 Scrapy 進階與應用 ⚫ Scrapy 資料處理 資料篩選和整理 資料存儲到文件或數據庫 ⚫ Scrapy 應用案例 爬取和分析實際網站數據
|
實作
|
|
|
12
|
第十二週 Matplotlib 入門 ⚫ Matplotlib 介紹 圖表基本元素 圖表繪製流程 ⚫ 圖表自定義 標籤和標題 軸和刻度 圖例設置 ⚫ 應用案例 折線圖、柱狀圖、散點圖等常見圖表繪製
|
實作
|
|
|
13
|
第十三週 Matplotlib 進階與應用 ⚫ Matplotlib 互動式視覺化 使用 Interact 功能 動畫效果 ⚫ Matplotlib 子圖和多軸 多圖和子圖的建立 軸的設置和管理
|
實作
|
|
|
14
|
第十四週 機器學習入門 ⚫ 機器學習基礎概念 ⚫ 機器學習簡介 ⚫ 應用實例-手寫數字辨識
|
實作
|
|
|
15
|
第十五週 生成式學習入門 ⚫ 生成式學習基礎概念 ⚫ 深度學習簡介 ⚫ 深度神經網路基礎
|
實作
|
|
|
16
|
第十六週 專題項目
|
實作
|
|
|
17
|
第十七週 專題項目
|
實作
|
|
|
18
|
期末考週
|
|
|
|
單一課程對應校能力指標程度 The Degree to Which Single Course Corresponds to School Competence
|
編號 No. |
校核心能力 School Core Competencies |
符合程度 Degree of conformity |
1
|
公民力 (Citizen)
|
4
|
2
|
自學力 (Self-learning)
|
5
|
3
|
資訊力 (Information)
|
5
|
4
|
創造力 (Creativity)
|
5
|
5
|
溝通力 (Communication)
|
4
|
6
|
就業力(Employability)
|
5
|
單一課程對應系能力指標程度 The Degree to Which Single Course Corresponds to Department Competence
|
編號 No. |
類別 Category |
系核心能力 Department Core Competencies |
符合程度 Degree of conformity |
單一課程對應院能力指標程度 The Degree to Which Single Course Corresponds to College Competence
|
編號 No. |
院核心能力 College Core Competencies |
符合程度 Degree of conformity |
教科書或參考用書 Textbooks or Reference Books
|
館藏書名 Library Books
|
備註 Remarks
|
|
※請尊重智慧財產權,不得非法影印教科書※
※ Please respect intellectual property rights and do not illegally photocopy textbooks. ※
教學方法 Teaching Method
|
教學方法 Teaching Method
|
百分比 Percentage
|
講述
|
20 %
|
專題實作
|
80 %
|
總和 Total |
100 % |
成績評量方式 Grading
|
評量方式 Grading |
百分比 Percentage |
作業撰寫
|
30 %
|
期中考
|
30 %
|
期末考
|
40 %
|
總和 Total |
100 % |
成績評量方式補充說明
|
課程出席率將會提升分數的評等
|
課程大綱補充資料 Supplementary Material of Course Syllabus
|
|
|