📊

資料工程與實務 - 期中考衝刺練習

國立宜蘭大學 電子工程學系 (105題核心選擇題庫)

選擇章節:
105
當前題庫總數
0
已作答題數
0%
作答正確率
0
累積錯題數
Ch 1 資料科學簡介 第 1 / 105 題
題目載入中...
快捷鍵:1~4 或 A~D 選擇 ← 上一題 → 或 Enter 下一題 Space 顯示解析

🎯 期中模擬全真測驗

模擬期中考正式規格!從全套 105 題中隨機抽取題目,包含完整的五大講主題(Python環境、語法、NumPy、Pandas)。交卷前不會顯示答案,交卷後將生成完整成績單與詳細題解。

❌ 錯題複習本

自動收錄你在練習與模擬考中答錯的題目。可針對性反覆練習,直到 100% 搞懂!

💡 考前必背精華卡 (DE01 ~ DE05 易錯與核心考點)

特別針對期中考高頻出題陷阱整理:切片邊界、記憶體複製、形狀廣播、標籤 vs 索引。

📘 第 1 講:資料科學簡介

1. 資料科學三大理論基礎

資訊科學/電腦科學 (Computer Science)、數學與統計 (Math & Stat)、領域專業知識 (Domain Expertise)。

2. Python 在資料科學的核心套件定位

numpy: 高效多維陣列與矩陣運算
pandas: 結構化表格資料分析與前處理 (耗時80%)
matplotlib: 資料視覺化與圖表繪製
scikit-learn: 機器學習演算法

3. CSV 規範 (RFC 4180)

純文字逗號分隔;若欄位包含逗號、換行或雙引號,必須用雙引號 " 包裹;內部雙引號用兩個 "" 轉義。

4. 常用公開資料集規格

MNIST: 70,000張手寫數字,28×28 灰階 (單通道)。
CIFAR-10: 60,000張彩色圖片,32×32 RGB (3通道),10類別。

💻 第 2 講:Python 程式環境

1. 語言本質與歷史

Python 為直譯式 (Interpreted) 動態型別語言;由 Guido van Rossum 於 1989 年聖誕節開發;Python 3.x 不保證向下相容 Python 2.x。

2. Jupyter Notebook 命名由來

代表 Julia + Python + R 三種資料科學主力語言,並向天文學家伽利略 (Galileo) 發現木星衛星筆記致敬。

3. Jupyter Cell 類型與超常用快捷鍵

三種儲存格:Code (程式碼)、Markdown (排版說明)、Raw NBConvert (未格式化純文字)。
Shift + Enter: 執行當前 Cell 並跳到下一個。
Ctrl + Enter: 執行當前 Cell 但保留游標在此 Cell。
Esc 後按 M (轉Markdown), Y (轉Code), B (下方新增), DD (刪除)。

4. Spyder 程式碼區塊標記

使用 #%% 將 Python 腳本分割成儲存格單元並以 Ctrl+Enter 逐塊執行。

🐍 第 3 講:Python 語法與陷阱

1. 切片語法 Slicing (含頭不含尾!)

a[start:stop:step],取出的元素索引為 start <= index < stop。若 step < 0 則反向反轉。

2. 物件參考 vs 淺拷貝 (極常考!)

b = a:只複製記憶體指標,修改 b[0] 會同時連動 a[0]!
b = a.copy() 或 b = a[:]:產生新的清單物件副本,兩者互不影響。

3. 格式化輸出 Format 語法

{:>10} 右對齊(寬度10);{:<10} 左對齊;{:^10} 置中。
{:8.2f} 總寬度8、小數點後2位之浮點數;{:08d} 補零。
{:X} 大寫十六進位;{:b} 二進位。

4. 集合 (Set) 與 字典 (Dict)

Set 元素不重複且無序。交集 &、聯集 |、差集 -、對稱差集 ^。
Dict 取值用 d.get(key, default),找不到 key 時不會噴 KeyError。

🔢 第 4 講:NumPy 運算與廣播

1. Rank (階) 與維度名稱

Rank 0 = Scalar (純量)
Rank 1 = Vector (向量, shape 為 (N,))
Rank 2 = Matrix (矩陣, shape 為 (M, N))
Rank 3+ = Tensor (張量)

2. `*` 元素乘法 vs 矩陣乘法

A * B:對應元素相乘 (Element-wise multiplication)!
np.dot(A, B) 或 A @ B:真正的線性代數矩陣乘法 (內積)。

3. 廣播法則 (Broadcasting Rules)

從最後一個維度 (後端向前端) 逐一比對:各維度長度完全相等 或 其中一個為 1 才能廣播成功!長度為 1 的維度會自動複製拉伸匹配。

4. arange vs linspace

np.arange(start, stop, step):不含 stop!
np.linspace(start, stop, num):預設包含 stop,均勻切成 num 個點。

5. 記憶體排序與屬性

C 順序:Row-major (列優先);Fortran 順序:Column-major (行優先)。
a.ndim: 維度數;a.size: 元素總數;a.itemsize: 單一元素位元組數;a.nbytes = a.size * a.itemsize。

🐼 第 5 講:Pandas 資料分析

1. 核心資料結構

Series:1 維帶標籤 (Index) 陣列。
DataFrame:2 維表格型資料結構 (由多個共用 Index 的 Series 組成)。

2. 切片重大差異 (必考!)

整數位置切片 df[0:2]:不包含結束索引 2 (取 row 0, 1)!
文字標籤切片 df['first':'third']:包含結束標籤 'third'!

3. loc vs iloc

loc:依據文字標籤 (Label) 選取。
iloc:依據整數位置 (Integer Position, 0-indexed) 選取。

4. Series 相加與 NaN 聯集陷阱

兩 Series 相加時,會依標籤取聯集 (Union);若標籤只存在於其中一方,該位置運算結果為 NaN!

5. 多條件布林遮罩

必須使用 & (且)、| (或),且每個條件必須用小括號 () 包裹,例如:df[(df['age'] > 20) & (df['score'] >= 60)]。

6. Iris (鳶尾花) 資料集規格

共 150 筆樣本,4 個特徵 (萼片長/寬、花瓣長/寬),共 3 類品種 (setosa, versicolor, virginica),每類各 50 筆。