發表文章

目前顯示的是有「data process」標籤的文章

python qgrid 安裝是個大坑

 python qgrid for jupyter 是個快速瀏覽資料的ui工具,可惜的是它的維護狀況有問題(在試了各種安裝和除錯後才發現),從 python 3.11 試到 3.9 ,ipywidgets 8 降到 7.8 再降到 7  不再折騰了,留給神人吧… ipydatagrid, datasette ... 可能可以考慮

使用 python 處理 excel 檔案的前置準備

 因為要處理 excel 檔案的內容,由於數量龐大,不想 ctrl C + ctrl V N 次,所以想要動用程式來處理,這次要用的是 python,雖然說是處理 excel ,其實拿到的檔案是 ods 的格式,所以還得做一些前置工作。  工作環境:     Windows 10     python     anaconda 建立一個名為 excel 的獨立 python 工作環境   conda create -n excel   cd excel 啟用名為 excel 的工作環境   conda activate excel 這個工作環境裏要安裝這些 python 套件   python -m pip install openpyxl   python -m pip install pyexcel pyexcel-ods pyexcel-ods3 pyexcel-odsr pyexcel-xlsx pyexcel-xlsxw   關閉現行的工作環境   conda deactivate 可以寫程式取用 ods/excel 了 收工!

PHP 抓取網頁內容筆記

最近實作抓取網頁內容,也遇到一些問題,為免那和我不好的記憶力和我分手,把重點記一下。 環境: Windows Php 5     Curl     Regular expression     Pho simple html dom 如同以往,抓取網頁之後就是要擷取特定模板(pattern) 內容,這個過程,一直以來並沒有不同。 有些情況發生了,雖然大多數的網頁用 GET 就能下載了( curl, file_get_html),有些網頁,要用 POST 方式,需要把 POST 參數代入(例如 curl: CURLOPT_POSTFIELDS),才能順利取得網頁的內容,否則一片空白,畢竟抓到這些資料來源,才能有下一步。 抓下來的資料,(十年)之前使用土法煉鋼的方式,用遁序漸進的方式,不斷的使用關鍵字炸開(explode)的方式,來取得目標的內容,雖然這等方式在現在也能達成目的,總是希望有點長進,果然,讀別人的程式碼是很有用地 XD。 如果時間上可行,測出正規表示法的比對模板,是很好的解決方式,不需要其他工具或是程式的導入,可惜,這些符號,和我真的很不熟(超生硬),有些真的花非常多的時間還測不出來,超需要慧根(是什麼,能吃嗎?),只能山不轉路轉了。 jQuery 對於擷取 DOM 有其長處,因為想直接在 PHP 上面實作,所以先把 jQuery 擱著,所幸找到了 simple html dom 的工具($html -> find(' TAG_NAME ', 0) -> plaintext;),讓這個工作變得有效率了,超級開心。 收工!

open data, big data, data mining, data 賣的什麼藥

data 一直以來都扮演評估情勢的要角,通常蒐集很多資訊,是為了找對事務的切入點或是新的突破點,雖然為了取得先機,有時侯還是必須在訊息不足的時侯做判斷,在情勢不明的時侯做決定;在 data 超多又亂花樣多到不行的時侯,己經掌握先機的人,具備分析 data 能力的人,為了分析結果更精準,或者開拓新的契機,希望別人 open 他的 data,不論準備因應的量能與程度,開放資料都帶來新的衝擊(好的或不好的)。 原始資料很難直接反映它本身的價值,所以需要處理加以統計、分析、解釋,找出關聯性,創造新的價值,所謂的加值服務,可以視為找出資料隱含價值的結果;從資料的架構來看,自有的資料,因為是自己建置的,資料關聯性在建置時就決定了,拿到資料時較快進入分析的階段,這類情形大致反映出 big data 之前 data mining 的狀況;big data 簡單說就是資料超級多、有夠亂、花樣百出、不是照自己的意思建置,也不是只依賴人力就能在有限時間內完成分析的程度,big data 要開始分析之前就必須先針對不同的資料來源、格式…等先加以整理,找出關聯性加以結構化,光是這一步就是大工程,更別說要有效找出價值密度高的資料,挑戰更大;big data火紅,是因為己經有些成功的案例,而掌握這種處理資料技術的人,應該會希望取得的資料越多越好;不管是那一種狀況,都是想在資料中淘金。 分析與加值服務最常見的例子是賣尿布加賣啤酒的故事,梗老了,大致是說在統計資料後發現買尿布時通常也加買啤酒,所以在陳列時就把尿布和啤酒放在一起,大多數的消費者因為方便就買單了,皆大歡喜;另一個例子簡單來說是這樣的,A問B說你怎麼看待C正在做的事,B說了一些觀點,A傳出B說的話,C以為B黑了他,這個只有少數人開心的暗黑過程,也可以看出原始資料與加值服務的本質。 雖然有正向和反向的例子,但是做這些事時目標都是很明確的,過程中會有很多不確切的因素,而得到的結果,不怕上天堂,就怕下地獄。 雖然西方哲人說︰不確切是一切偉大事物的本質。 但是打開潘朵拉的盒子,馬上就要面臨衝擊,準備好了嗎? 是糖、是毒藥,想清楚了嗎? 話說我才修完這篇,就收到 google 寄 cloud computing 廣告信來,哈哈,是巧合嗎?真有效率

google form 表單的亮點 資料收整

圖片
在 google form 入門 線上表單可使用的問題類型  裏,分享了線上表單的設計,讓表單上線供人填寫,既然表單的目的是蒐集資料,這次要接著進一步看看怎麼利用 google form 來從事 後續的資料處理 ,充分展現這個工具最好用的功能。 處理回復內容: 在表單蒐集一定時間後,接下來就要處理使用者回復的內容了,這部份的功能都集中在「回覆」的頁籤裏, 如果想要關掉表單,可以在上圖 [接受回覆] 按下後,表單就不會接收回復內容,再按一下可以回復,繼續接收訊息。 google form 可以提供摘要,使用者回復之後,點上圖 [回應摘要] 功能鍵,經過一陣子的運算就可以知道每一題答案項目回復的比重,不用一開始就和數據奮戰半天才得到統計圖,超方便。 google form 是一步到位的應用程式(達到黯然銷魂飯的等級),加上雲端的特性,讓管理者隨時都能掌握問卷的狀況,真是觀前顧後。

Excel 初步資料整理

說到 Excel 常常會馬上讓人想到強大的函式功能,透過電腦快速的運算效能來處理變數,卻很少人想起處理資料的苦差事,如何資料整理,很快地去蕉存菁,希望藉這次的分享,讓大家產生一些新的想法,幫到有須要的人。 另存新檔 ,不論你變動的內容多寡、變動的頻率,建議將你動過的檔案另存新檔,而且這個動作最好是在你開始編輯檔案之前就做,或是一打開檔案的時侯就做,並為你的檔案加上版號,不要用複雜的編碼方式,就v1、v2、v3……一直v下去就行,有些人會覺得變動太小,而且導致一樣的檔案好多,佔用了儲存空間,其實做久了你就會發現,與你花一個上午,嘔心瀝血、攪盡腦汁、殺害許多腦細胞才換來的報表相比,買硬碟花錢、價格低廉,寶貴心血、無價,這麼做的好處,一來檔案不會蓋來蓋去把你真正想要做的成果搞掉了,二來,減少程式當掉所產生的損害,要找檔案時,就找那個 v 後面的數字最大就行。 3個工作表 ,開啟新的 Excel 檔案時,預設會開3個工作表,心中一直有個疑問,為什麼是3個,為什麼不是1個、2個,由於克勤克檢的習性,也沒花錢去正規班學過問過,雖然也試圖從股溝大神求卜,未果,所以這次只是分享個人的觀點,在做了這麼多的 Excel 表後產生的想法是,1個工作表存原始資料(完全不更動裏面的資料內容),1個(或以上)工作表存放資料運算變動的過程,1個工作表存最後的結果,如果軟體用久了都會有自已的習慣、想法和做法,不用一定要更動,這只是個人的習慣;另一個習慣是,如果有時間加上最後一個(表4,雖然通常是沒有時間,裏面註記每個工作表的簡述,和變動的時間與內容概要。 資料處理 ,報表是管理工作的重要工具,為了業務的推行,原始資料從資料庫倒出來時,收在工作表1,工作表的欄位會大於或等於報表所需的資料,而且很可能不是你想呈現的方式、排序、或是需要對原始資料再加減乘除一下,這個時侯,對於原始資料的處理,有2種做法。 法1 ,把原始資料的工作表直接複製一份,操作方式,按住[原始工作表] > 直到動作結束按住[Ctrl] + [滑鼠左鍵] > [拖、拉、放]到鄰近工作表的位置,如此可以得到一份一模一樣的工作表,名稱會多一個(1),再用這個工作表去操作; 法2 ,在第2個工作表中用 等號「=」 ,光是會用這個就能處理很多表單了, 把你要用到的欄位很快全部抓過來(漏了也...