初心者也會用的 R 語言讀取 XML 資料分析實戰教學!(三)

前兩篇文章已經介紹過處理 XML 資料的前備知識以及 R 語言 XML 套件的常用功能,是時候磨刀上陣了!本文將採用政府開放資料中的台鐵、高鐵以及微軟 XML 教學檔案進行範例演練,內文中使用到相關的套件及語法將不在一一細述,請參考前兩篇文章的說明。 XML 資料來源: 1. 台鐵時刻表 2. 高鐵時刻表 3. 微軟提供的範例檔

初心者也會用的 R 語言讀取 XML 資料分析實戰教學!(二)

在前一篇教學當中,我們已經看過 XML 的樹狀節點結構、 XML Schema 以及 R 語言 XML 套件的常用功能,在接下來的內容當中,我們將繼續研究 Xpath 語法,並介紹好用的視覺化工具 XML Viewer ,讀者可以搭配閱讀第一篇文章所列出 XML 包的功能作為補充。 剛試用 R XML 套件來讀取 XML 的時候應該不少人會有這樣的疑問:我要如何擷取一份 XML 中特定節點的屬性或者資料?

初心者也會用的 R 語言讀取 XML 資料分析實戰教學!(一)

隨著 API 經濟遍地開花,應用程式與資料源之間的互動實作成為現代軟體工程師必備的基本能力,其中最常見的中前端資料交換格式有 XML 及 JSON 等等,其中 XML 由於傳統商用等級的服務高度支援,且各程式語言都具備完整成熟的套件體系,讀取 XML 對於資料工程師或資料科學家的日常工作而言可說是不可或缺的一部分。 XML 是一種標記語言,類似網頁 HTML ,透過 < 各種TAG > 的定義統一化規格並豐富化資料意義,配合 Schema 讓資料結構具備高度可程式化能力,再加上容易維護的優勢,在許多資料串接實務中是很流行的通用資料格式(別再說只會 CSV 啦!)。 可惜的是,許多立志朝向資料科學領域的學生很容易忽略 XML 的學習,加上網路上搜尋「 R XML」的熱門網頁例如這篇教學《使用 R 讀取開放資料 (CSV, XML, JSON)》通常比較簡略,因此有了這篇教學分享文章的誕生,讓我們一起來練習。

統計R語言實作筆記系列 – 用 Shiny 套件極速打造你的商業智慧分析網站!

早在 Big Data 一詞還未深入人心之前,商業智慧分析系統就已經在企業級應用領域有著長足的歷史,由國際知名的軟體公司設計的 Business Intelligence 產品的一貫傳統就是配上可以由客人自定義而且視覺化效果華麗的功能性圖表,又經常稱為企業儀表板 ( DashBoard ),能夠讓用戶根據不同的選項操作來從各種角度分析企業的即時經營數據。 而在以 R 為主要工具的資料科學社群中, Shiny 無疑是最佳的儀表板製作工具,它不但提供了免費版本,能讓你輕易地部署到網路上,而且也能搭配原先 R 就已經很強大的套件來執行資料重整、分析及繪圖,非常適合預算有限但需求殷切的企業用來打造屬於自己的 prototype 商業智慧系統。

資料玩家人人必備! 5 分鐘快速部署你的第一支 R Shiny 互動式圖表網頁APP

打從 2012 年下半首次亮相開始,在玩 R 的資料科學社群當中,出現了一個人人都在談論、場場都在介紹的套件:Shiny 。這個由 R 相關的新創團隊 R Studio 所開發的套件,如今在許多企業( 最近就聽說過包括 ebay 在內的幾間知名廠商)的內部研究專案中都扮演著 prototype 生產器的重要角色。 Shiny 到底是做什麼的?為什麼可以讓許多使用者趨之若鶩?

統計R語言實作筆記系列 – R的字串處理:grep套件包(grep、grepl、regexpr、gregexpr、regexec)

差不多從 7、8 年前首次聽到 R 這個名字的時候開始,就對於 R 有一個刻板印象:「很好的數值資料處理工具,但並不擅長用來處理文字資料」。 最近因為有個小任務需要把非結構文字資料轉為結構化的矩陣,趁著這個機會也更新一下自己對 R 的認識,在找資料的過程才發現即使是「中文字串」這個 Text-Mining 當中的煩人問題,現在也可以透過 R 當中的套件做快速的處理,分析者甚至不需要了解何謂程式語言中的 regular expression,簡直神奇!

統計R語言實作筆記系列 – 2D視覺化進階 ggplot()的基本架構(二)

上一篇介紹 ggplot 基本架構的教學文章當中,主要示範如何把數據轉換成圖形的方法,接著要來介紹的剩下三個部份,則是影響最終圖形樣式的輔助指令,它們包括改變繪圖座標的 coord 、佈景主題  theme 以及控制圖形輸出的 facet 。 為方便比較,一樣先送上作者自行分類的 ggplot 基本功能圖解: 本文繪圖以內建資料「 ChickWeight 」為例,先使用 str() 觀察資料集的基本資訊: > str(ChickWeight) Classes ‘nfnGroupedData’, ‘nfGroupedData’, ‘groupedData’ and ‘data.frame’: 578 obs. of 4 variables: $ weight: num 42 51 59 64 76 93 106 125 149 171 …$ Time : num 0 2 4 6 8 10… Continue Reading

統計R語言實作筆記系列 – 2D視覺化進階 ggplot()的基本架構(一)

R 世界的諸多套件當中,有兩個高級繪圖套件非常受到歡迎,分別是「 lattice 」與「 ggplot2 」。 和 R 內建的圖形函數相比,兩者都納入更多子功能可以繪製複雜的圖形,不過作圖的基本原理並不相同,其中 lattice 除了 2D 繪圖之外,還能繪製 3D 圖形,但就美觀來說, ggplot2 的潛力是讓人驚艷不已的,豆瓣的網友甚至暱稱為「文藝繪圖」的工具。

統計R語言實作筆記系列- 直線abline()、曲線curve()與多邊形polygon()視覺化繪圖

最近的文章中提過如何用 R 產出基本的統計圖表,也示範過用 abline() 函數繪製輔助線,但假如想要加上各種經典曲線在圖形中方便比較差異,或者隨心所欲地繪製自定義的曲線,那麼這篇文章將要介紹的函數 curve() 就能幫上忙。 輔助線之外,適當地繪製面積也是一種替圖表增色的方法,尤其是在面積本身帶有數學意義,例如累積機率,此時標示出面積能幫助圖形資訊的理解,只要使用 polygon() 函數就能做到這點。 繪製簡單直線與迴歸線: abline()、lsfit() abline() 本身無法直接做圖,得先畫出一張圖表之後再當成輔助線加上去。在此稍微回顧一下繪製直線的函數abline(),它的語法如下: abline(a = NULL, b = NULL, h = NULL, v = NULL, reg = NULL,coef = NULL, untf = FALSE, …) 其中參數a代表截距常數,參數b則是斜率常數。假如我們已經知道迴歸式等於: Y=1.1X+1,就能使用 abline() 函數來繪製直線。 假如迴歸式未知,也無須另行計算迴歸模型,只要利用 lsfit() 函數快速取得迴歸參數,再配合 abline() 就能得到迴歸直線了,參考以下的例子。 par(mfrow=c(3,1)) #切割繪圖視窗為3X1,方便稍後合併比較 aa

統計R語言實作筆記系列 – 2D資料視覺化入門

R的繪圖套件相當豐富,在「R Graphical Manual」網站上有不少範例可供學習,一般的2D統計圖表自然不在話下,還可以輕易繪製出工程上常用到的3D圖形。此外,R還包含了一些特殊的繪圖功能,像是自訂函數、繪製世界地圖資料、互動式圖表、把圖表輸出到網頁上等等。R的社群經常喜歡把這種跨領域綜合繪圖的能力概稱為「資料視覺化(Data Visualization)」。