<div style="text-align: right; background-color: #f5f5f5; padding: 4px 12px; border-radius: 5px; display: inline-block; float: right; font-size: 1.4rem;"> Last Updated:2025/07/01 </div> # RStudio 操作範例說明 [TOC] <br> 本範例使用政府資料開放平台的 [新竹市空氣品質資料](https://data.gov.tw/dataset/34773) 進行基本資料分析與折線圖繪製。 請先下載原始資料檔案(CSV 格式):**`aqx_p_212.csv`** ![](https://man.twcc.ai/_uploads/rkrZ2MoFyg.png) <br> ## 透過傳輸檔案節點上傳 `.csv` 檔案 請使用 Windows PowerShell 將下載好的 CSV 檔案上傳至創進一號(Forerunner 1)來進行傳輸。 <div style="border: 1.5px solid #B7B7B7; padding: 1rem 1rem; border-radius: 5px; color: #333;"> 🔗 <strong>詳細教學請參閱</strong> <a href="https://man.twcc.ai/@f1-manual/transport_ip#%E6%AA%94%E6%A1%88%E5%82%B3%E8%BC%B8%E7%AF%80%E9%BB%9E%E6%93%8D%E4%BD%9C%E6%B5%81%E7%A8%8B" target="_blank" style="color: #007ACC;"> 檔案傳輸節點操作流程 </a> </div> <br> ``` # 透過傳輸檔案節點 f1-dtn01.nchc.org.tw 或是 f1-dtn02.nchc.org.tw 上傳資料 # user 改成創進一號的username # put 指令上傳你的檔案 PS C:\Users\XXX\Downloads> sftp user@f1-dtn01.nchc.org.tw Connected to f1-dtn01.nchc.org.tw. sftp> put aqx_p_212.csv Uploading aqx_p_212.csv to /home/user/aqx_p_212.csv aqx_p_212.csv 100% 69KB 1.2MB/s 00:00 sftp> ``` <br> --- <br> ## 連線進入創進一號 :::warning <i class="fa fa-bullhorn" aria-hidden="true"></i> **備註**: 由於 Open OnDemand 是透過 **計算節點** 取得運算資源,而計算節點無對外網路連線,因此需透過其他方式來安裝 Extension。 ::: **1. 登入 Login Node** <div style="border: 1.5px solid #B7B7B7; padding: 1rem 1rem; border-radius: 5px; color: #333;"> 🔗 <strong>詳細教學請參閱</strong> <a href="https://man.twcc.ai/@AI-Pilot/ByTJJNVz1g" target="_blank" style="color: #007ACC;"> 主機登入/登出教學連結 </a> </div> <br> ```bash #登入主機後確認資料存放位置 [user@ilgn01 ~]$ ll -rw-r--r-- 1 u5846412 TRI1123529 71151 Feb 13 15:30 aqx_p_212.csv ``` **2. 載入 RStudio 模組** 請先清空模組並載入 RStudio 模組(此例使用版本 4.4.0): ```bash [user@ilgn01 ]$ ml purge #清除現有模組 [user@ilgn01 ]$ ml tools/rstudio/4.4.0 #載入 RStudio 模組 ``` **3. 安裝 R 套件(以 ggplot2 為例)** 進入 RStudio 的 console,並使用指令 `> install.packages(“ggplot2”, “~/R/library-4.4/”)` 安裝套件至自定的使用者目錄 ```bash [user@ilgn01 ]$ R #進到 RStudio 的 console R version 4.4.0 (2024-04-24) -- "Puppy Cup" Copyright (C) 2024 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu ... > install.packages("ggplot2", "~/R/library-4.4/") trying URL 'https://p3m.dev/cran/__linux__/jammy/latest/src/contrib/ggplot2_3.5.1.tar.gz' ... * installing *binary* package ‘ggplot2’ ... #安裝套件 ggplot2 * DONE (ggplot2) The downloaded source packages are in ‘/tmp/RtmpDuYa5G/downloaded_packages’ > q() #安裝完成即可退出 R [user@ilgn01 ]$ ``` <br> --- <br> ## 回到 Open OnDemand 開啟 RStudio Server 介面 完成資料上傳與套件安裝後,即可透過 Open OnDemand 開啟 RStudio Server 進行程式撰寫與執行。 **1. 確認套件是否安裝成功** 進入 RStudio Server 網頁介面後,點選右下角的 `Packages` 分頁,確認 `ggplot2` 已成功安裝。 ![](https://man.twcc.ai/_uploads/rJJVRQoF1g.png) **2. 開啟 R Script 編輯器** - 建立新檔案 依序點選 `File → New File → R Script` 來建立一個新的 R 腳本。 儲存檔案時會存放於創進一號使用者的家目錄中,建議預先建立資料夾以便分類與管理。 ![](https://man.twcc.ai/_uploads/rkbjMEjt1e.png) - 開啟既有檔案 若已將 R 檔案預先上傳至創進一號,可透過 `File → Open File` 來開啟現有程式碼。 ![](https://man.twcc.ai/_uploads/HJDQfNoF1g.png) 3. 載入資料並執行分析 本範例將使用 [新竹市空氣品質資料](https://data.gov.tw/dataset/34773) 進行資料分析。請先將下載的 `aqx_p_212.csv` 上傳至主機,並執行以下程式碼: ```bash # Load data data <- read.csv("aqx_p_212.csv", stringsAsFactors = FALSE) data$monitordate <- as.POSIXct(data$monitordate, format = "%Y/%m/%d %H:%M") data$concentration <- as.numeric(data$concentration) data <- na.omit(data) itemnames <- unique(data$itemengname) # Plot plot(NA, xlim = range(data$monitordate), ylim = range(data$concentration, na.rm = TRUE), xlab = "Monitor Date", ylab = "Concentration", main = "Air Quality Over Time", xaxt = "n") axis(1, at = seq(min(data$monitordate), max(data$monitordate), by = "1 hour"), labels = format(seq(min(data$monitordate), max(data$monitordate), by = "1 hour"), "%Y-%m-%d %H:%M"), las = 2, cex.axis = 0.7) colors <- rainbow(length(itemnames)) for (i in seq_along(itemnames)) { item_data <- data[data$itemengname == itemnames[i], ] lines(item_data$monitordate, item_data$concentration, col = colors[i], lwd = 2) } legend("topright", legend = itemnames, col = colors, lty = 1, lwd = 2, pch = 16) ``` 4. 執行程式碼 撰寫完成後,點選工具列上的 **「Run」** 按鈕即可執行程式並產出圖表。 ![](https://man.twcc.ai/_uploads/Byebuo4jKyl.png) :::warning <i class="fa fa-bullhorn" aria-hidden="true"></i> **備註**: - 若出現以下警告訊息: 表示在轉換資料時出現無法識別的值(如非數字),R 將其轉為 `NA`。 請檢查資料內容,特別是欄位 **concentration**,是否包含非數值內容(如字母 `x`)。 ```bash Warning message: In eval(ei, envir) : NAs introduced by coercion ``` - 解決方式:將該欄位的非數值資料(如 `x`)移除後重新執行程式,即可消除警告訊息。 - 資料清理前後對照圖如下: ![](https://man.twcc.ai/_uploads/Bk-OiEoF1e.png) ::: <br> <br> <br> <!-- 作者資訊 --> <div style="border-top: 2px solid #eee; padding: 28px 20px; display: flex; justify-content: space-between; align-items: center; font-family: sans-serif;"> <div> <div style="font-size: 20px; font-weight: bold; margin-bottom: 8px;"> RStudio 操作範例說明</div> <div style="max-width: 640px; color: #444; line-height: ;"> Author:Pei-Hsun Kuan, Jue-Jun Wu<br>Date:2025-02-14</div> </div> <div> <a href="https://man.twcc.ai/@f1-manual/manual" target="_blank" style="display: inline-block;"> <img src=" https://iservice.nchc.org.tw/nchc_service/images/nchc/pi4.png" alt="創進一號使用說明" style="height: 80px;"> </a> </div> </div>