2018年5月25日 星期五

數據分析步驟分享 EDA Exploratory Data Analysis



2. Data Collection
 
3. Tables(Dataframe = observations * variables)
    
    表格是由觀察樣本跟變數組成的,大家可以先看看每一個變數的定義。
 
4. Sort by each columns(variables)
       from … to …
 
    將連續變數由小到大排序,看看整個範圍區間是否符合預期。
 
 
5. Sampling 100 observations to check the portion of category in each variables.
 
    隨機抽取100筆樣本,看看資料筆數。例如抽樣的100筆中,有15筆是台北市。大概可以算
 
    出台北市的占比大約是15%。
 
6. Drop the useless data.(totally same values/ totally different values )
  
    如果一個變數內的值完全一樣/完全不一樣,代表這個變數無法對資料做出差異。
 
 
7. Observe each variables.
• Discrete variables = Bar chart
• Continuous variables = Hist chart
 
8. Observe the correlation
•Discrete variables * Discrete variables  = Stacked bar chart / Cross table
• Discrete variables  *  Continuous variables  =  Boxplot
• Continuous variables *  Continuous variables = Scatter

2017年6月12日 星期一

[R語言] 簡單文字雲


文字雲 一直是肉眼可以快速辨識重要性的重要工具,以下提供工作上需求用到的語法。





首先,因為Wordcloud僅能在2.2版本的R語言下操作,因此必須先安裝套件"devtools"。接著安裝套件"wordcloud"。


2017年4月24日 星期一

《寵物友善餐廳》大安森林公園_敲敲咖啡界的烤布雷_CApu caFE

抹茶與巧克
抹茶與巧克
輕盈的腳步、認真的神情,
看著小店長CACA和茶弟玩躲貓貓,
由衷感謝店家允許毛小孩可以在不打擾其他客人情況下,
自由自在的活動,
帶著毛小孩用餐,時常碰到不可進入或入袋的狀況,
也十分理解店家的顧慮,
並不是所有人可以接受毛小孩一起用餐,
所以對於寵物友善的餐廳,
抹茶和巧克一定要大聲放送,
而且CApu caFE還有驚為天人的咖啡界的烤布雷,
多層次的口感,品嚐前記得敲敲表面喔!

※店名:CApu caFE
※營業時間:Mon. - Sun.  12:00 - 21:00
※地址:台北市大安區瑞安街252號
電話:(02)2706-8393 
價格範圍:90-300
 低消每人任一餐點或飲品,無服務費。
 有插座,提供Wifi

2016年2月15日 星期一

[R語言] 中文文字探勘 - 以txt文字檔為例 - 文字雲


圖例: 某優質男孩團體討論版
經過分析,大家聊天的重點多為「工作」及「體育」項目。顯示社會新鮮人特有的童貞。


網路上有一些關於R語言的中文探勘方法,但有些文獻過於簡化,因此,巧克將過年期間摸索來的方法,在此向大家分享。

使用的套件為 Rwordseg及TM套件。
使用的版本為 32位元R 及32位元Java。→這點很重要,用64位元rjava無法順利執行。

記得先安裝rjava,才有辦法安裝Rwordseg。
安裝後記得要修改一些環境參數。(下周再來寫QQ)


程式碼如下:(還請大家參考)
install.packages("rJava")
install.packages("Rwordseg", repos="http://R-Forge.R-project.org")
install.packages("tm")
install.packages("tmcn", repos="http://R-Forge.R-project.org", type="source")
install.packages("wordcloud")
install.packages("XML")
install.packages("RCurl")
Sys.setenv(JAVA_HOME="C:\\Program Files (x86)\\Java\\jre1.8.0_71\\bin\\client\\")

library(rJava)
install.packages("Rwordseg", repos = "http://R-Forge.R-project.org")
library(Rwordseg)
library(tm) # 啟用Corpus使用
library(tmcn)  
library(rjson)
library(tm)
segmentCN("今天一直下雨")  # 測試


d.corpus <- Corpus(DirSource(directory ="C:/Users/vaio/Desktop/Wordlog/"), list(language = NA)) # 讀取文字檔(ANSI),指定到資料夾層級) 
d.corpus <- tm_map(d.corpus, removePunctuation) # 移除標點符號
d.corpus <- tm_map(d.corpus, removeNumbers) # 移除數字
d.corpus <- tm_map(d.corpus, function(word) {
  gsub("[A-Za-z0-9]", "", word)
})  # 移除大小寫英文

inspect(d.corpus)


d.corpus <- tm_map(d.corpus, segmentCN, nature = TRUE) # 進行中文斷詞

d.corpus <- tm_map(d.corpus, function(sentence) {
  noun <- lapply(sentence, function(w) {
    w[names(w) == "n"]
  })
  unlist(noun)
}) # 選取名詞


myStopWords <- c(stopwordsCN(), "貼圖", "圖片")
d.corpus <- tm_map(d.corpus, removeWords, myStopWords)


inspect(d.corpus)
d.corpus <- tm_map(d.corpus, PlainTextDocument)
d.corpus <- Corpus(VectorSource(d.corpus)) # 轉向量矩陣

inspect(d.corpus)

tdm <- TermDocumentMatrix(d.corpus, control = list(wordLengths = c(2, Inf)))
inspect(tdm)


library(wordcloud)
m1 <- as.matrix(tdm)
v <- sort(rowSums(m1), decreasing = TRUE)
d <- data.frame(word = names(v), freq = v)
wordcloud(d$word, d$freq, min.freq = 50, random.order = F, ordered.colors = F, 
          colors = rainbow(length(row.names(m1))))

2015年10月13日 星期二

(English Class1)日期/時間表達方式


今天老師一開始以日期/時間的表達來開場。希望我們能夠快速與老外約會議。
中文表達  11/14 (六) 18:40
英文表達  Saturday, November 14th, 6:40 in the evening.
順序為 1.星期  2.日期   3.時刻  4.上午/中下午/晚上

其中切記日期的表達是照著順序:
First
Second
Third
Fourth
Fifth
Sixth
Seventh
Eighth
Ninth
Tenth

(GA分享)_Dimension Widening 外部資料匯入

You publish articles by many different authors on your site. You want to create a  report that shows the total number of pageviews for each author. Which of the following features will allow you to add author information to Google Analytics?

A)Segments
B)Analytics Intelligence
C)Annotations
D)Dimension Widening
E)Custom Reports

當我們今天想要匯入一些外部資料時(add information) ,像是Customer ID、Order ID、Campaign owner、Cost...等。就會需要Dimension Widening這個步驟。簡單來說,就是想要自訂維度或指標。

2015年10月12日 星期一

(GA分享)_GAIQ Segment與Filter的差異?

Which of the following are possible uses of filters? Select all that apply.
A) report on only a subdomain or directory.
B) exclude visits from particular IP address.
C) include only traffic coming from a particular campaign.
D) replace complicated page URLs with readble text strings.

GA有兩種篩選器,
1. 帳戶管理 : 在最上面的"管理"裡面。