學生社團的數據分析,Python線上課程分析實做(上)

學習不限於課堂的現在,我們可以從線上課程挖掘到什麼?

動機

由於學期開始社團就會擬定一連串的活動方案,活動組的幹部需要設計工作坊給校內同學,不止可以替同學拓展學習的領域,還可以觀察大學生對於課程的需求以及興趣。

畢竟學校不太會有教授開設「履歷健檢」、「動畫設計」等等課程,而通識課程的類型學校也有規範,以政治大學來說就是「自然、人文、社會」領域。

因此其他類型課程往往就是「學校社團」來提供,比如喜歡吉他的人可以參加吉他社、喜歡跳舞的人可以參加熱舞社。基本上我覺得社團就是挖掘一個人「喜歡一件事情的程度」可以到多麽強烈,比如我就有朋友可以連續好幾天跳舞、跳到半夜,從一個跳舞新手變成舞林高手。所以當有個人能夠全心投入做一件事情的時候,其實是件蠻幸福也挺讓人覺得激勵的事情,而社團的其中一個功能就是幫助學生找到自己的其他興趣。

在設計工作坊的時候,我們除了思考學校同學比較「想要」什麼樣的能力,也想知道同學們「需要」什麼樣的能力,如果站在主辦方的角度,則會希望舉辦的工作坊能夠引起大家的興趣。這時候我就想,既然現在的學習也不限定在學校了,乾脆來看看線上課程的資料怎麼樣?於是著手分析了Hahow課程的數據。

Hahow是一個線上課程平台

會挑選Hahow,除了因為該平台的線上課程品質還不錯,我自己因為是重度自學成癮者,所以已經在上面敗了五堂課XDD (以資料科學來說很推薦大鼻&辰禧 在上面開設的R語言與商業分析課程 還有Yeh James老師開設的Python 資料分析&機器學習入門,常常把這兩堂課拿來複習,其他線上課程可以參考我的這篇:要怎麼學coding ? 。)

以及它的Slogan就是

學那些學校不會教的事

正好與我們辦工作坊希望提供給同學的視角一致。至於對校內課程來說,分析coursera、edX、Udemy等比較主流學科的課程平台或許會得到比較好的結果。之後有時間會再做一份同等的分析出來,畢竟我對大家在學習什麼還蠻有興趣的。

然後比較重要的元素是,這次的分析來自於我自己是政大創聯會的成員,一開始加入有部分動機是自己對創投產業有興趣,也欣賞創業家的精神。而社團的氣氛比較偏向「創新技能」:

關於政大創聯會

政大與新創圈窗口

政大創聯會的使命是成為政大人的聚夢窩

我們與企管系教授合開一門有學分的課程「創創入門」,並且舉辦媒合人才與新創公司的「新創奧斯卡」、論壇(之前有AWS、Fintech 論壇)、企業參訪、黑客松、新創團隊培育計畫、創客窩等等……. 這次的分析目的是作為設計工作坊的參考。

所以人為篩選會以「創業、硬技能、學生」為元素。

歡迎按讚與關注:政大創聯會 :) 定期分享新創圈、新創媒合活動、工作坊等資訊!

那麼接下來就開始:

這次使用的資料我則是已經爬下來了,如果有需要練習請到最下方。您可以親自打開電腦練習寫Python,感受一下實際做分析的感覺,只提供個人練習請勿商用,感謝。

雖然都是網站的公開數據,但如有不妥煩請來信告知,會馬上撤除!

讀入套件

一樣載入Pandas方便做數據分析,seaborn、matplotlib做資料視覺化。

讀入我們的資料以及用 head 看一下資料前五筆。shape 可以查看數據的維度,這邊我們可以看到有17個欄位,384筆課程資料。

前幾門課程其實都還是募資課程,所以評分(avg_ratings)都是0!

通常資料因為剛採集過來,比如說爬蟲,我們都會先簡單清洗一下,將資料格式轉換。例如說proposal、Incubate都是時間格式才是,可以用pandas的to_datetime轉換為datetime類型資料。

lambda是匿名函數,不需要額外取一個function name就能達到撰寫函數的效果,通常用在簡單的運算上面。這邊的作用是將時間保留到日期就好,因為我們並不是很關心他是幾時幾秒上來募資的,也可以將時間提取月份就好。這裡還順便創建一個都是1的欄位 have,待會會有妙用。

有了月份之後,我們可以先看看提案大多都是幾月產生的,用plotly視覺化一下:

將提案內容畫出,雖然應該沒什麼關聯,但是莫名地在7月、10月有課程提案的旺季,可能猜測人們在那些時間或許有比較多的時間準備課程提案。以講師邀約來說,可以作為 舉辦大型、中型活動的參考月份。

在R語言裡面的資料視覺化工具,有一個很好用的套件ggplot,其實在Python也是可以使用的哦!這邊我們就把matplotlib的風格(style)設置為ggplot,然後使用 distplot 看一下募資人數(successCriti)的分佈:

募資在商業過程裡面其實是個很好的手法,因為這相當於測試市場的反應,降低課程冷門的風險,對講師來說也需要用心行銷課程。這邊發現有三個主要的高峰,可見我們可以以30人為一個小型工作坊人數限制(社團內舉辦),50為中型(社團間合辦),100為大型活動(校際合辦)。

畢竟辦工作坊需要評估參加人數,除了場地因素之外,設定合理的人數限制也是一個需要了解的地方。

我們還可以用文字雲簡單看一下各個課程的標題:

接下來我們自己訂定一個指標:Await

公式是solidTickets / successCriti 。也就是實際上課人數/需要募資人數

await意味著預期比率:

越高的預期比率也意味著低估該類型課程在市場上的需求度。

這個指標可以看作爆款課程指標,講師可能沒有想到課程會大賣所以募資人數訂得不高,但是上課人數很高就會爆款。接著我們用sort_values來排名前20個我們自定義的爆款課程:

這邊截圖前五名,可以發現都是蠻有名的課程作者,比如文案高手育聖老師、圖文不符團隊、參加多場量化講座與人氣部落格的Finlab等等…….我們再用剛剛的文字雲,針對這些課程做視覺化一次!

可以發現到,人們對程式設計、Adobe系列等「技術性」課程非常有興趣,會有很高的期待感。然後這邊的AI是指人工智慧的AI還是Adobe的AI,Ummmmmm…大家可以猜看看哦!

而設計類型可以推廣為行銷、媒體製作等工作能力,程式有理財、網頁等相應能力。我自己覺得程式設計是寫網頁、理財的工具,而Adobe主要是行銷類工具,看來這兩個領域在線上課程是蠻有市場的。

如果想要更精準地比較,資料欄位中有時間欄位,我們可以把他們與分析日期結合,計算出「開課天數」,將上課人數 / 開課天數來放到同一個時間尺度下比較!這邊我就不做了,大家可以自己寫寫看!

我們可以將剛募資成功的課程找出來,查看目前的修課人數。由於剛募資成功,此時的人報名動機有:

1. 作者行銷手段良好

2. 作者名氣大

3. 非常有興趣

4. 課程安排吸引人

這邊看到M平方投資網站的投資課程「預期率」非常多,雖說作者本身就是投資網站營運團隊,但仍然驚人,然後下一張圖則是最近重新跑程式的結果,可以發現第一名是「金融市場 x 程式交易」,也是理財投資相關的,可見多數人出社會後最關心的學問或許是理財,如果要把它與政大創聯作結合,可以用創投的角度說明投資、以及募資的重要性。

有趣的是,人們對攝影、IG經營、Illustrator等經營自媒體相關的課程也相當有興趣以及期待。

接下來突然好奇,有沒有人很喜歡在Hahow上開課呢?所以剛剛的have欄位就派上用場了,我們直接以「作者」來統計開課數目,也就是have的總數,接著用sort_values()排序出來!

我們可以看到圖文不符開了四門課,主要以行銷、資訊設計為主:

絕對不是打廣告!只是因為比較認識這個團隊XD

那麼喜愛開課,我們可以思考背後的原因是什麼,我想能夠開設這麼多門課程,有一個很大的因素是:

這個學科領域應該有一批愛好者,也就是比較安全,有死忠顧客的領域

於是我就稍微把前十五名整理了一下:

  • 圖畫電繪
  • 日文教學(語言)
  • 社群/設計(行銷)
  • 瑜珈(健美)
  • 談判、思考
  • 理財
  • 寫App
  • office操作

可以發現除了工具類技能(圖畫、office、寫App),個人的設計、圖畫、語言、瑜珈等課程也存在市場。當然也有可能跟作者本身的個人魅力有關,但是如果要深入拆解這個問題,可以提出來與其他人討論看看。我們也可以統計一下學生總數,在Python中其實可以直接用nlargest(前n大)取代sort_values().head( n )

這是比較簡潔的寫法:

有沒有發現一個新的問題?就是真的越多課越好嗎?

我們改用學生人數來看,就會發現並不是如此,有些老師課不多,但是學生更多!

而其中的重疊對象:圖文不符、藍 國峰 所教的

行銷 與 電繪 或許真正是有濳力的主題!

那麼下一步,就是去看看這些課程大綱:

包含了哪些內容?

來作為辦理工作坊的參考依據。

到這裡目前只用學生人數的角度去切入「熱門」這件事情,所以來換個角度,利用「評分」來檢視課程!平台經濟中的評分佔了一個很重要的因素,因為它可以給予新人對平台不同角色的信用評分。

好像有些課程的分數很慘烈(?

我們可以利用下面的程式碼篩選出來,不過這邊我就不公布結果了:

看到分數比較低的課程之後,我去看了一下評分留言,小小歸納出幾個雷區:

程式設計相關的課程因為比較硬一點,學生有可能上完了課程學不太到什麼東西。

1. 不要用過於基礎、網路上就能查到的資料來上課

2. 內容枯燥,技術性的課程只講技術很容易流於無趣,老師需要多帶一點個人、實務經驗

3. 缺乏對學生背景認知,跳太快,過於進階就不太適合。

所以上工具方法的課程真的要小心…

那麼評價風氣如何?

平均大抵上在10則留言左右,另外有些課程學生很樂於給評價與回饋,表示這是一門很有互動性的課程。

另外小小提一下,之前社團在舉辦工作坊的時候,常常覺得線上回饋單的填寫率很「差」,比如30%左右,不過現在看了線上課程的評論數,其實有一個數據分析的思維就出來了,我們平常談論的「好」跟「壞」到底是不是常見的情況?幾百人的課程可能也才10多條評論,那背後的原因是什麼?或者有什麼誘因可以鼓勵學生寫回饋?我覺得都是一個可以討論的問題。

所以這裡是不是可以直接利用數據找找看,一個互動高的課程有什麼特質呢?把評論數大於100則的課程篩出來:

這裡我們可以發現

1. 簡單/手寫 (手繪、插畫、水彩甜點、寫字)
2. 設計(社群行銷、資訊設計、Adobe)
3. 理財(Python、小資)

是互動非常好的課程,表示學生上完課之後有許多收穫,但是還不只如此。
諸多評價給誰看的?其實就是想上這門課的同學、外人。
表示這些主題、內容、講者會是

容易被推薦的對象!

也就是說,如果想快速發展一個平台、知名度,平台上的課程主題以上面三個為主應該是個不錯的策略。

因為上得好的話,有很高機率修課同學也會推薦給別人,可以快速傳播。

課程架構也可以從互動高的課程學習,比如說我們可以參考熱門課程的課程架構來思考工作坊的內容安排。

那麼傳播效應怎麼看?我這邊粗淺地再回到學生數目觀察。

將上課人數大於5000的課程撈出來:

比對評分項目與修課人數,或許真的有傳播效應!也就是課程人數這麼多,可以猜測有相互推薦的因素。
但是更合理的是,修課人數越多,當然評價越多囉!

簡單做個線性迴歸看看:

相關係數0.75左右,所以只是有相關而已,不代表傳播效應真的存在。

這邊我們可以再定義一個feedback_ratio,就是回饋率!

回饋率 = 評論數 / 學生人數

定義出回饋率後,我們把回饋率做排名如下:

意外發現,瑜珈系列的評價比例是最高的。基本上每四個人就會有一個人給予老師回饋!不過修課人數很少…所以結果看看就好。

課程價錢怎麼訂?

我們可以用describe()統計pre_price(預購價格)變量的統計量

如果在預購期間購入課程,基本上2000以內都可以解決,算是很實惠的課程了。那我們如果沒跟到募資期間怎麼辦?價格會差很多嗎?

好的,quantile直接移動一格有沒有發現 XXD 所以差很多!不過我覺得一個月一門其實也算是不錯的投資,畢竟這就是投資自己的能力。這邊我們也可以以此來訂做講師費,講師的行情其實可以來一次定為1500~2000左右。

其他還有一些指標可以分析,可以留給大家玩玩看,搭配組織需求來訂定工作坊主題。

後來經過其他篩選與夥伴討論後,我邀請了Evonne Tsai老師來替同學上產品分析的課程。

畢竟「產品」是新創企業「從零到一」該產生的,而且分析不同產品也可以作為營運團隊的借鑑,我覺得這個能力跟這次的分析對象:政大創聯會是最為符合的,老師的文章我也看過許多篇都十分喜歡,至於結果就等十二月的成效囉。

另外不久之前,我們邀請了上面看到的圖文不符 志祺七七講師來內訓,最近即將舉辦的工作坊也以社群行銷為主題。雖然這些不一定是數據分析導致的結果,但是數據分析確實間接回應了我們的選擇是對的。對於您的組織來說,什麼樣的能力又比較符合您們的調性呢?歡迎自己分析看看哦!

這一篇是我設計工作坊的部分分析,工作坊設計目的到這邊為止。

那下一篇把角色切換:

如果今天我們是Hahow營運,我們可以怎麼做?

我將會針對Hahow的課程定價用Python做數據分析、並提出定價策略的優化,取得更高收益。也就是「線上課程平台的商業分析」,用下面這張圖預告一下:

那麼以上就是這次的「學生社團的數據分析,Python線上課程分析實做(上)」

有其他問題都可以底下留言。

資料在這(僅限個人練習使用,嚴禁商用)

歡迎想學習Python資料科學、商業分析、金融知識的人一起交流!本部落格的內容全部都是基於「分享」的實作、理論兼顧文章,希望能夠幫助到所有對資料科學領域有興趣的人們,長期關注可按左手邊的Follow!若喜歡我在 Medium 的內容,可以拍個手(Claps)這邊想做個實驗,好讓我知道你/妳喜不喜歡這篇文章:
拍 10 下:簽個到,表示支持(謝謝鼓勵!)
拍 20 下:想要我多寫「商管相關」
拍 30 下:想要我多寫「資科相關」
拍 50 下:我有你這讀者寫這篇也心滿意足了!

敬請期待下一篇!或是您也可以逛逛我的其他資料科學文章:

人工智慧商務系列:

Python資料科學系列:

看我用金融的概念解釋AI:

如果想跟著我實作資料科學,開始寫程式必知必會基礎系列:

--

--

戴士翔 | Dennis Dai
Finformation當資料科學遇上財務金融

外商分析顧問,Ex- Apple Data Scientist,曾在FMCG巨頭/日商管顧/MBB管顧/高成長電商從事商業分析與數位轉型,專注分享管顧、商業、數據分析的思考。分析/演講/合作歡迎來信:dennis.dai.1011@gmail.com