第一天

自我介紹

我來到工作坊的原因主要是下定決心學習R語言,因為指導教授希望我利用此工具完成學位論文。但經歷演講、閱讀推薦讀物後,我知道相關技術固然重要,卻不能單純以「學習技術」為目的。  
學生服務於健保署,工作內容便是整理、分析龐大的健保資料庫,參加工作坊的目的自然包括對數據的熱愛,並希望走出工作的世界,看看各個領域的人如何處理數據、如何看待數據。工作坊傳授給我們資料分析的觀念及實例,也學習到R語言的操作。認為參加工作坊的收穫超乎預期,感謝團隊提點,讓我們知道在大數據時代,運用科學處理數據的能力只是基本,要不斷充實自己,嘗試擷取「厚數據」,不僅掌握事實,更理解事實的環境背景、文化中真正有意義的東西。

思考與書寫

挑戰一

請舉至少一個例子,說說你的觀察,有什麼情形是消費者的行為跟企業所預期的不一樣?

現實變數太多,消費者生活習慣、人格特質、當下心情可能影響行為決策,企業所能預測的只是普遍的法則,但規律中必有例外,又或者僅處理一項「痛點」,很多障礙仍待克服。

以自身工作經驗為例,健保署為了避免醫療資源耗用,建立藥品、檢查驗、醫療影像的雲端查詢系統,醫師在處置前查詢雲端便可避免重複開立上述項目。但我們沒有考量的是,第一,病人用藥習慣,有時是用藥不規則、不遵醫囑服藥;有時是囤藥習慣,設法以一張處方箋去不同藥局重複領取藥品。即「重複」的責任不在醫事機構,我們卻只能以核刪醫療費用為大宗管理作為。第二,雲端查詢的資訊障礙,各機構資訊品質不一,醫療影像有上傳卻可能模糊、無法辨識,醫師為求謹慎重拍清晰的影像反而被當作重複處置。第三,操作的教育訓練,隨著更多項目上傳雲端,醫師須花更多時間尋找頁面,有些醫師認為操作困難、耗費時間不符效益而選擇不查詢。第四,臨床實際狀況,有時因病情急迫確實需要加強處置,卻被我們斷定為重複。一個政策在制定時,雖然立意良善,但執行上將面臨很多狀況,須不斷進行檢討、修正。

挑戰二

有位知名大學的校長認為現在技術會愈來愈平民化,「人人都能成為資料科學家」因此,企業應鼓勵員工參與校調AI(透過學習和調整逐漸最佳化),珍視自己的公司員工,透過他們這些領域專家來嗅出無意義的推論。你覺得這樣的論點如何? 

我認為資料種類繁多,除了要學習分析數據外,還要有知道分析何種資料的靈敏度。「人人都能成為資料科學家」確實是現在的趨勢。現今的員工若無法擁有處理工作相關資料的技術,可能漸漸被淘汰。

員工自身成為資料科學家的優點很多,例如自身較外人更能分辨何種資料重要、值得分析,另外是取得資料較為容易。

缺點為一開始可能過度「迷信」數據,僅握有薄數據的資料分析結果便認為足以交差。新進員工應先以觀念、文化訓練為主,了解與工作相關的資料如何取得、其背後意義為何、分析時需考量哪些因素等技術以外重要的事。另外我認為侷限在自己的職位,可能沒有問出「從來沒有人問過的問題」的眼界,需與外界不斷互動、學習,挖掘更深層的數據。

挑戰三

以下是給準備要拿中山大學110學年度第一學期「厚資料與意義探勘」課程的同學的題目,若你尚未取得並初步閱讀《演算法下的行銷優勢 》(Sensemaking: The Power of the Humanities in the Age of the Algorithm)這本書,請務必在工作坊結束後的一週內(截止於9/3 17:00) 將這題完成。你的出席佔學期得分的40%;兩天的全部作業佔60%。
為什麼非技術導向的專家在大數據時代會覺得自己使不上力?你看完這本書後給自己的定位為何?並請你指出那些觀念對你最有啟發,或你最想挑戰作者的那些觀念(評論時請加上書中的頁碼)。
一、
大數據時代可以取用無盡的資訊,使以人為首的文化探討漸漸失去價值。作者在書中闡述技術的精神是最佳化,我們的存在因技術而具有彈性,但也因技術而變得容易操控、捨棄。且大數據時代,多數人仰賴演算法,能在短時間內處理大量數據。非技術導向者會覺得自己使不上力的原因為無法完全掌握處理數據的能力,卻可能以更具「深度」的意義建構法來理解這個時代的種種現象。所以,僅是覺得自己使不上力,絕非代表沒有價值,本書使非技術導向者重拾信心,給讀者五個意義建構法的原則,並且有案例作說明,引領我們選擇適當環境、擁有具體標準進行數據蒐集,並整合數據、用數據獲得更大的視野。
二、
回顧自己進入職場的三年,我也是深深為「技術」著迷,單位引入SAS作為健保資料庫的統計分析工具,將龐大的數據在雲端處理後呈現最精簡的表格,想必能大幅提升工作效率。我將所有心力都花在學習這項技術,而不重視各個法規及試辦計畫的成立緣由、不明白很多工作為何而做。交出表格不代表已做好自己的工作,應該要更進一步詮釋表格的意義,並有相應的管理作為。在看完本書後明白統計分析工具呈現的數據僅是薄數據,在擁有更多數據處理經驗之後,了解醫病關係、醫院如何經營、病人就醫背後的原因……能對這些單看數據無法呈現的現象深入認識,才算是做好一份工作。就像書中提到學習一門新語言時,首先要學習文法這個例子(P122),我給自己的定位還在「文法」階段,看過書後明白自己不能一直停留在這個階段,不再過分拘泥於科學手段。
三、
我最有感的一句話出現在241頁,沒了關懷,每件事都正確,但沒有一件事真實。關懷是我們成為人類的基本要件,此關懷不是與人或與事明確的情緒聯繫,而是指某事對你有意義、對你重要。沒有關懷,看不見大環境、不了解全貌。另外,180頁提到公司的設計思考應一一找出消費者使用產品或服務可能有的所有「痛點」,本段呼應我上了一年的行銷課程,如何消除種種障礙,讓消費者選擇我們的產品。
四、
本書將重要觀點列點呈現,使讀者能輕易掌握,如知識的四種類型(P106)、同理心的三個層面(P152)、六個意義建構法程式(P155);每一觀念均輔以實例,使論點更具說服力。閱讀本書,像是在字裡行間體驗作者及筆下人物的真實生活經驗,故談不上有挑戰作者觀念的地方。

我想要問老師的問題

把你來到這個工作坊心中的問題寫下,或是指明想問那位老師什麼問題,助教將會收集後先傳給老師,在工作坊進行期間回答。

在工作坊期間並未想到什麼疑問,但透過同學踴躍提問、老師解答是更深刻的學習。

第二天

思考與書寫

挑戰四

請點開這個連結,看看圖,然後簡要的回答以下幾個問題(圖的下方文章不必看)。
1.請簡單寫下你從圖上第一眼看到的資訊。

各長度代表建築物高度,且又特別標註在哪個城市、高度多高

2.寫下你從圖中得到的第一個(想說出來的)靈感

北美洲(淡藍色)是圖中看起來最多的,直到1990以後亞洲、大洋洲及中東才開始蓋出當年度世界最高的建築

3.寫下你在這靈感中喜歡的部份、不喜歡的部份,以及你希望這個圖中呈現什麼你想看的?

喜歡的部份:可以看到每年建築物的高度變化、趨勢

不喜歡的部份:標註時代背景,例如世界大戰、經濟危機使畫面更加凌亂。橫軸下方竟然又標註很多文字,讀者可能不會細看。

希望呈現:除高度外,坪數是否也很重要;另有意連結最高建築與經濟,如呈現當年該國經濟指標是否更具意義。

4.寫下三個你想改變的部份並說說看為什麼。

1)資訊過於繁雜,也許轉換成3D畫面可多呈現一個維度,看起來會乾淨一點。如有執行上困難,沒有太多技術條件下,我可能
分成2張圖呈現。

2)不瞭解為何把中國從亞洲獨立出來,我應該會將其歸在亞洲用相同顏色呈現。

3)也許是不應該用長條圖呈現?

5.試試看:用文字勾勒一下你想呈現什麼樣的圖像,並再試著挑出自己所勾勒圖像的缺失。

以年度為橫軸,縱軸為建築物高度呈現第一張圖。

以年度為橫軸作歷史事件的甘特圖。

簡要表格整理標註國家、城市及高度資訊。 缺失會是無法一目瞭然,需要讀者去對照三張圖表。

動手分析與解讀

挑戰五

有一班研究生爭論著關於中秋烤肉還流不流行。請看著這個網調資料,分析你覺得可能說的故事與意義。

探索式分析:MCA

# 在這個階段你只需要能製出這個變數關聯分析圖,並就圖上的跡象進行分析與解讀。
# 若有興趣學習這個方法,請見《民意調查資料分析的R實戰手冊》第六章細講。

load("BBQ.rda")
library(dplyr)
library(FactoMineR)
library(factoextra)

bbqMCA <- select(bbq, V44r, V18r, V20r, V21r, V23r, V27r, V45r, V48r) 
bbqMCA.nona <- na.omit(bbqMCA)
nrow(bbqMCA.nona) 
## [1] 645
names(bbqMCA.nona) 
## [1] "V44r" "V18r" "V20r" "V21r" "V23r" "V27r" "V45r" "V48r"
res<-MCA(bbqMCA.nona, ncp=10, graph= F) 
fviz_screeplot(res, ncp=10) 

# 變數類別關係圖
plot(res, axes=c(1, 2), new.plot=TRUE, 
     col.var="red", col.ind="black", col.ind.sup="black",
     col.quali.sup="darkgreen", col.quanti.sup="blue",
     label=c("var"), cex=0.8, 
     selectMod = "cos2",
     invisible=c("ind", "quali.sup"), 
     autoLab = "yes",
     title="") 

變數相關性的確認與解讀

# 接下來,我們使用卡方檢定來進一步確認變數可能的關聯。
library(sjPlot)
## Registered S3 methods overwritten by 'parameters':
##   method                           from      
##   as.double.parameters_kurtosis    datawizard
##   as.double.parameters_skewness    datawizard
##   as.double.parameters_smoothness  datawizard
##   as.numeric.parameters_kurtosis   datawizard
##   as.numeric.parameters_skewness   datawizard
##   as.numeric.parameters_smoothness datawizard
##   print.parameters_distribution    datawizard
##   print.parameters_kurtosis        datawizard
##   print.parameters_skewness        datawizard
##   summary.parameters_kurtosis      datawizard
##   summary.parameters_skewness      datawizard
sjt.xtab(bbq$V48r, bbq$V44r, 
         show.row.prc = TRUE, # 顯示列百分比
         show.col.prc = TRUE,  # 顯示欄百分比
encoding='UTF-8'
         )
## Warning in sprintf(" <td class=\"summary tdata\" colspan=\"%i\">%s=%.3f &middot;
## df=%i &middot; %s=%.3f &middot; %s=%.3f</td>", : one argument not used by format
## ' <td class="summary tdata" colspan="%i">%s=%.3f &middot; df=%i &middot; %s=%.3f
## &middot; %s=%.3f</td>'
憭批振<9c><91><82>隞暑<8b>摰寞<98>蝯⊥<84><83>€<82> 隤芸<9b><82><95><98>僑<9c><9c>摰嗡犖銝€韏瑞<82><9f> Total
銝<9c><83> <9c><83>
銝<97> 233
67.9 %
76.1 %
110
32.1 %
32 %
343
100 %
52.8 %
<90><84><8f> 73
23.8 %
23.9 %
234
76.2 %
68 %
307
100 %
47.2 %
Total 306
47.1 %
100 %
344
52.9 %
100 %
650
100 %
100 %
χ2=124.987 · df=1 · φ=0.442 · p=0.000
# 下面的框外,請你就這個結果說出你心中的意義。
# 並請你調跟據上面的變數類別關係圖,做至少一個你要檢證的相關性並在框外說明你的發現與想法。
# 提示:將上述的sjt.xtab()語法照貼在本框內的下方,改動$後頭的變數為你有興趣的,就可以產生分析結果。

sjt.xtab(bbq$V18r, bbq$V20r,
           show.row.prc = TRUE, # 顯示列百分比
           show.col.prc = TRUE,  # 顯示欄百分比
           encoding='UTF-8')
## Warning in sprintf(" <td class=\"summary tdata\" colspan=\"%i\">%s=%.3f &middot;
## df=%i &middot; %s=%.3f &middot; %s=%.3f</td>", : one argument not used by format
## ' <td class="summary tdata" colspan="%i">%s=%.3f &middot; df=%i &middot; %s=%.3f
## &middot; %s=%.3f</td>'
憒<9e>之摰園<82><9c>死敺€末€<97><9f> 隢<96><96>迭<82><88>€<9a>鞊∪€<82>
閬箏憭<9a><82><9a>摨瑟<9c>之敶梢嚗<9f>
Total
敶梢銝之<88>蔣 <9c>蔣
瘝<9c>榆 366
67.8 %
88.4 %
174
32.2 %
73.7 %
540
100 %
83.1 %
銝擙 48
43.6 %
11.6 %
62
56.4 %
26.3 %
110
100 %
16.9 %
Total 414
63.7 %
100 %
236
36.3 %
100 %
650
100 %
100 %
χ2=21.999 · df=1 · φ=0.188 · p=0.000

老師不好意思!表格呈現亂碼問題,經過助教提點加入encoding=’UTF-8’在我的電腦可正常呈現,但上傳到網頁又變亂碼了…

48:大家圍著烤肉比其他活動要較為容易聯絡感情;44:說回到烤肉,請問您明年會不會想全家人一起烤肉? 明年會想要全家人一起烤肉的人裡面有68%認為大家圍著烤肉比其他活動較容易聯絡感情;反之,明年不想烤肉的人裡面有76.1%認為烤肉不見得較其他活動容易聯絡感情。可推測聯絡感情可能是受訪者明年想要全家一起烤肉的一個因素。

18:如果大家都烤肉,您會覺得「不好玩」嗎?;20:您覺得戶外的烤肉對您的健康有多大影響?
我找到2個看似無關的問題,多數人(83.1%)認為「大家都烤肉」不會因此覺得烤肉「不好玩」。加入烤肉對健康的影響來看,不會因為大家都烤肉引響興致的人裡有67.8%認為烤肉對身體健康影響不大或沒影響。認為戶外烤肉對健康有影響的人影響了他對烤肉的新鮮感( p<0.001),推測對健康有害的認知影響了人們對此活動的新鮮感。

確認式分析

這個階段不一定要做到,因為工作坊重點放在潛在關聯的確認。若你已有基本的統計或計量課程的基礎,你可以操作看看,在R中如何輕易的進行建模與假設檢證。也歡迎你繼續嘗試,挑戰看看自己的直覺!

## 請你就以下例子中所使用的八個變數,試著做出你自己版本的假設,並將你的分析與解讀寫在語法框外。

# 假設一:對烤肉的新鮮感不再(V18r)會降低明年烤肉的意願(V44r)
# 假設二:覺得烤肉影響健康(V20r)便會降低明年烤肉的意願
# 假設三:覺得烤肉花費造成負擔(V21r)便會降低明年烤肉的意願
# 假設四:覺得烤肉麻煩(V23r)便會降低明年烤肉的意願
# 假設五:覺得烤肉影響環境(V27r)便會降低明年烤肉的意願
# 假設六:覺得不必要見面就能聯絡感情(V45r)會降低明年烤肉的意願
# 假設七:認為烤肉不是聯絡感情的首選(V48r)便會降低明年烤肉的意願

load("BBQ.rda")

## 二元勝算對數模型
mod.1 <- glm(V44r~ V18r+V20r+V21r+V23r+V27r+V45r+V48r, 
             data=bbq, family=binomial)
summary(mod.1) 
## 
## Call:
## glm(formula = V44r ~ V18r + V20r + V21r + V23r + V27r + V45r + 
##     V48r, family = binomial, data = bbq)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -2.1544  -0.9159   0.4547   0.8186   2.2016  
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  -0.1028     0.2611  -0.394 0.693684    
## V18r1        -0.9319     0.2593  -3.593 0.000327 ***
## V20r1        -0.2302     0.2035  -1.131 0.257974    
## V21r1        -0.2541     0.2046  -1.242 0.214258    
## V23r1        -0.7009     0.2325  -3.015 0.002571 ** 
## V27r1        -0.1109     0.2063  -0.538 0.590751    
## V45r1         0.5169     0.1917   2.696 0.007008 ** 
## V48r1         1.8033     0.1870   9.644  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 892.04  on 644  degrees of freedom
## Residual deviance: 710.49  on 637  degrees of freedom
##   (因為不存在,5 個觀察量被刪除了)
## AIC: 726.49
## 
## Number of Fisher Scoring iterations: 4
# 假設一、四、六、七得到支持--「對烤肉的新鮮感不再」(假設一)、「覺得烤肉麻煩」(假設四)、「覺得不必要見面就能聯絡感情」(假設六)、「認為烤肉不是聯絡感情的首選」(假設七)會影響烤肉的意願。

目前雖無基本的統計或計量課程的基礎,但已參考過同學作品做初步學習,我會精進自己的統計基礎後再回來看看這整段程式的!

我的假設是…

我的解讀是…