iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 8
2
AI & Data

人工智慧 vs.工人智慧系列 第 8

Day 08:數據資料來源大部分解 (下集)

上一篇講了兩個數字:1)誰表的文章最多 2) 誰發表的文章被推文數最多?今天要看另外兩個數字:

  1. 每個 user 累積推文的數量
  2. 文章被推文的數量

同樣的,範例的 code 已經寫好了,我們直接從這些 code 來做說明。

每個 user 累積推文的數量
Statistical_AuthorsPushedNumber.java 這個執行檔裡面可以知道第一個數字,我們把得到的結果輸出為 AritlcePushedNumber.txt

同樣的,在這個範例檔有些地方要配合你自己的環境進行調整:

folder_source :存放已經下載的 ptt 文章位置
folder_output :結果輸出位置

由於是需要知道每個作者的推文數量,所以需要先知道全部有多少作者 (author)。在上一篇有提到,我們已經先將全部作者的清單輸出在這裡:

AuthorList_20190508.txt

讀入所有作者清單存放在 allAuthor_array 這個 Vector,並將每個作者的推文數向量 allAuthorPushedCount_array 設定為 0。

之後在 Parsing()裡面我們要找出哪些 message 是某個作者所發布的,在 message array 裡面有 “push_userid” 這個 property,所以互相對應之後可以知道哪些作者各自推文了哪些。

https://ithelp.ithome.com.tw/upload/images/20190906/20119726NotXkzR9H9.png

在 Statistical() 這個方法裡,把 allAuthor_array 跟帶入的 userID 進行比對,若相同就+1 並累進入 allAuthorPushedCount_array 向量。

之後把 allAuthorPushedCount_array 進行排序,我們可以得到

AuthorPushedNumber.txt

  1. f204137 50288
  2. roberchu 35640
  3. ckw19 33314

這是前三名的推文數量,可以看出誰很喜歡去推文 ?

文章被推文的數量
接下來我們想知道,作者發布過的文章被推文的數量。這個數據有點直得探討的是:

  1. 發越多文的作者是否被推文數量越多
  2. 被推文數量越多的作者,是否發表的文章都具有一定水準?

好,那我們就先來看看這部分該怎麼做!

或許,你看出來了,文章被推文的數量其實在前一篇已經算出來了。它跟『誰發表的文章被推文數最多?』不是一樣嗎?沒錯,他們的數值是一樣的。

所以其實我們不用再算一次這個數值,那為什麼要特別要再講一次這個?因為其實我們想要知道上面提到的量個情境:文章數跟代表性是否成正比?我覺得我先賣個關子好了,大家只要先把這個檔案的使用找代號記住,在之後我們用演算法計算出文章品質後,再回頭來看看這個清單是不是值得參考(明牌)囉。

AuthorPushedNumber.txt


免責聲明:本文章提到的股市指數與說明皆為他人撰寫文章內容,包括:選股條件,買入條件,賣出條件和風險控制參數,只適用於文章內的解釋與說明,此提示及建議內容僅供參考之用,並不構成投資研究、認購、招攬或邀約任何人士投資任何投資產品或交易策略,亦不應視為投資建議。


上一篇
Day 07:數據資料來源大部分解 (上集)
下一篇
Day 09:今天漲停還是跌停?
系列文
人工智慧 vs.工人智慧30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言