使用 melt() 來 reshape 資料時, measure variable 的型態要一致,否則會出現警告。
例如有以下的資料:
資料中,subject 欄位為 factor。若使用 subject 為 id.var 進行 melt,則會出現以下警告訊息:
因為,第一個欄位為 Factor 型態,melt() 把後面其他的欄位也視為 Factor,造成轉換時的錯誤。
Reference:
[1] thiagogm, 2013. Reshape and aggregate data with the R package reshape2, www.r-bloggers.com.
2017年4月28日 星期五
2017年4月27日 星期四
ui:debug 和 flash.keep 的衝突
若在 facelet 中使用 ui:debug,則在同一個 facelet 中使用 flash.keep 時無法正常顯示 flash scope 中的變數。
測試資料
References:
[1] ui:debug
[2] Flash class
測試資料
References:
[1] ui:debug
[2] Flash class
2017年4月15日 星期六
Expectation-Maximization (EM) Algorithm 介紹
演算法,用來計算混合模型(Mixture Model)下的 Maximum Likelyhood 估計。
混合模型(Mixture Model):
觀察到的資料點(Data Point) 來自於兩個分配(Distribution), 哪些資料點是屬於那個分配呢?
Youtube 影片介紹
EM Algorithm: How it works (1) by Victor Lavrenco
EM Algorithm: How it words (2) by Victor Lavrenco
2017年3月29日 星期三
心得整理 - 文字探勘者的入門心法.
文字探勘(Text mining) 是由人類文字中找出知識的研究。其過程,先對需進行文字處理,將人類自然語言文字和機器文字(如 HTML 標籤)分離。之後,在應用 Data Mining 的技術,找出文字間的關係或者分群等,以找出文字背後所代表的群眾知識[1]。
一、研究範疇
文字探勘的研究主題可依人類產生文字的過程進行區分。文字是人類對於客觀世界現象的主觀描述。在文字探勘的第一個主題是找出自然語言的知識,內容包括:
- 自然語言處理(Natural Language Processing): 將人類自然語言轉化為電腦更易於處理的形式,如詞性分析、句法分析、語義分析等。
- Text Representation: 利用數字表示沒有結構化的文字,以利後續數學處理。
- 文字關聯及探勘(Word association and Mining): 找出具有相同用途的文字,也稱為 Paradigmatic Analysis;或者找出文字間不同的組合的方式,也稱為 Syntagmatic Analysis。
- Topic Mining: 在了解字與字之間的關係後,找出主觀描述者在討論的話題(Topic)。
- Concept Mining: 試著找出文字中的抽象想象(abstract idea)或稱概念,此概念是大家都知道的概念,雖然所有的字彙不同,但描述的都是相同的概念。如自然語言中的同義字或者片語,be completely dead = be as dead as doornail。
文字探勘的第二個主題是找出主觀描述者背後的知識,試著分析出描述者的主觀意見(Opinions)。 這個主題稱為 Opinion Mining, 從文字中分析主觀描述者的意見或情緒, 如 positive/negative, happy/sad 等.
第三個主題是從主觀描述者所提供的文字, 分析出主觀描述者所處客觀環境中發生的情境資料, 如地點、事件、描述者的人際網絡等, 此主題稱之為 Contextual Text Mining。
二、方法整理
2017年3月17日 星期五
在 RStudio 啟動時自動執行語系切換 指令
問題
在資料中有中文字,每次進 RStudio 時都要手動執行 Sys.setlocale(category="LC_ALL", locale = "cht") 將語系改成 CP-950。做法
在專案目錄下新增一個 .Rprofile 的檔案,加入 Sys.setlocale(category="LC_ALL", locale = "cht") 指令。如此,在開啟專案時便會自動執行 .Rprofile 內的指令[1]。參考資料
[1] Josh Paulson, 2017/1/22, Using Projects, https://support.rstudio.com/hc/en-us/articles/200526207-Using-Projects, Accessed on 2017/3/182017年2月23日 星期四
如何對 Datatable 上的某一個資料列進行編輯? - 使用 p:dataTable 元件
原理:
1. 利用 p:dataTable 中的 selection 屬性取得目前選擇的物件. selection 屬性要和 Managed Bean 的 property 綁在一起.
2. 設計一個 UI 提供使用者輸入新的資料. 這個 UI 可以是 Dialog, 也可以是 Page. 此 UI 的輸入元件會取得先前 Managed Bean Property 的資料並何其繫結在一起.
3. 在 Managed Bean 提供一個方法, 例如 saveDB(), 呼叫 EJB 的方法, 將修改後的資料儲存到資料庫中.
2017年2月7日 星期二
Defining relative clause 和 non-defining relative clause 間的用途差別
Defining relative clause 和 non-defining relative clause 間的使用方式有什麼不同呢?
參考此 youtube
My brother, who is a policeman, lives in New York.
我只有一個哥哥,現在住在 New York. 使用 non-defining relative clause, 因為不用特別限定我所要描述的規格。
My brother who is a policeman lives in New York.
我有兩個哥哥,當警察的那個現在住在 New York。使用 defining relative clause 限定我所要描述的其中一個哥哥。
來個 Quiz:
5 things about non-defining relative clauses
訂閱:
意見 (Atom)

