校際選修

115-1 選課時程

進行中

  • 初選第一階段 6/15/2026
  • 初選第二階段 6/22/2026
  • 校際選修 8/24/2026
  • 初選第三階段 8/31/2026
  • 開學後加退選 9/7/2026
  • 逾期加退選 9/21/2026
選課資源

Python 科學計算程式設計

Scientific Computation Programming with Python

學期
115-1
學分
3 學分
當期課號
574000
永久課號
GEIT10003
開課單位
資訊技術服務中心
授課教師
鄭昌杰
校區
光復
類別
選修
上課時間表
週一
5
13:20–14:10
Python 科學計算程式設計
CS-PC2
3 節連堂
6
14:20–15:10
7
15:30–16:20

* 根據陽明交大上課時間表所列

概述

This is an advanced course of Python programing. Please DO NOT take this course if you never study any course of basic programming with Python. The main topics of this course are numpy, numerical analysis, and data preprocessing techniques for machine learning. This course will not introduce the basic Python syntax and instructions.

先修科目

This is an advanced course of Python programing. Please DO NOT take this course if you never study any course of basic programming with Python. The main topics of this course are numpy, numerical analysis, and machine learning. This course will not introduce the basic Python syntax and instructions. This course introduces how to use Python with numpy to design a program that efficiently calculates a large number of floating point values. The course topics cover document processing, scientific data analysis, signal processing, basic image processing, and data preprocessing for machine learning. Programming assignment every week, with a total of about 10 assignments. This course includes a mid-term exam and final projection. The final project for this course requires students to work in teams of 1–3 members to apply numerical analysis techniques to the processing of a real-world dataset. 此為Python程式設計的進階課程,若您沒有修過Python基礎程式設計之相關課程,請勿選修本課程。本課程主要內容為numpy與數值分析,並沒有包含Python基礎語法與指令。此課程介紹如何以 Python 搭配numpy 來設計一個有效率地運算大量浮點數值的程式, 課程主題涵蓋文件處理、科學資料分析、訊號處理、基本影像處理與機器學習的資料前處理。本課程每週都會有程式設計的作業,總共會有約10次的作業。本課程有期中測驗與期末專案。期末專案部分,學生需組隊完成,每隊1-3人,利用課堂所介紹的數值分析技術應用在實際的資料集上。 * All lectures take place in the classroom, not online (實體上課,無線上上課)。 * Students may join this course if the number of attendees is below 50 before the registration deadline. To enroll, please email the instructor during the second week of the semester with your student ID, department, grade level, and course type. Priority is given to non-EE and CS students.(若在選課截止日前三天上課人數仍未滿50人,即可加簽。非電機與資訊學院的同學優先。欲加簽的同學,請於開學第二周,將您的學號、系級、姓名、課程分類email給老師即可。不在這時間內寄信者,恕不受理)。

教學方式

Google Colab or Anaconda

評分方式

Homework. (40%) Midterm exam. (30%) Final project. (30%)

週次計畫
週次主題
第 1 週Introduction
第 2 週Data containers in Python
第 3 週NumPy: Arrays and reduction functions
第 4 週教師節
第 5 週NumPy - Arithmetic operators
第 6 週NumPy - Array management
第 7 週Importing Data: json, csv, and excel files
第 8 週光復節
第 9 週Midterm exam
第 10 週NumPy: Linear algebra
第 11 週Machine Learning and ANN
第 12 週Signal processing: interpolation, convolutions, and feature detection.
第 13 週Signal processing: audio and FFT
第 14 週Optimization methods
第 15 週Final project presentation
第 16 週Final project presentation
教科書

1. Claus Führer, Jan Erik Solem, and Olivier Verdier, "Scientific Computing with Python: High-performance scientific computing with NumPy, SciPy, and pandas, 2nd Edition," Packt Publishing, July 23, 2021. 2. John D. Kelleher, Brian Mac Namee and Aoife D'Arcy, "Fundamentals of Machine Learning for Predictive Data Analytics," 2nd, MIT Press, 2020. 3. Aurélien Géron, "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems," 3rd, O'Reilly Media, 2022.

Office Hours
地點
CS331
時間
By appointment
聯絡方式
E-mail: jameschengcs@nycu.edu.tw TEL: 03-5712121#31707