戰略紀錄

Pandas 第3講:Python資料處理套件Pandas檢視與定位資料

Open Data: Mobile App Statistics (Apple iOS app store) 上一篇我們提到了pandas最重要的兩個資料物件(沒有看過的可以點這個連結),但我們光會存取資料是不夠的,假設我們今天要分析的資料有一萬多筆,且每筆資料都有一百多個欄位,要能直接從如此龐大的資料中分析趨勢或是關聯,基本上是不可能的,所以今天的重點就是介紹如何檢視與定位資料。 使用資料表 Notebook Content: 這次我們一樣會使用apple(AppleStore.csv)的公開資料,其中紀錄了兩個app平台商店中所有app的分類、評分、下載量、名稱、大小⋯⋯等相關資料,假設我們是一間app開發公司的分析人員,我們想研究目前市場中哪些分類的評分以及下載量是比較高的。 首先我們先試著利用 pd.read_csv() 讀取檔案: import pandas as pd app = pd.read_csv('AppleStore.csv') pd.read_csv()…
學程式助教
November 21, 2019
戰略紀錄

利用編輯器自動整理縮排 SASS 檔案

在這邊我們預計實現團隊中使用 sublime + Atom 的開發人員都能夠對 .scss 做自動縮進,並且效果必須一樣。 縮進書寫規範:兩格空白 每個團隊或個人使用的 CSS 規範不盡相同,可以在細節部分自行調整,也可以參考一些CSS编码规范 有的人喜歡四格縮進,也有喜歡兩格的。 (more…)
學程式助教
November 21, 2019
戰略紀錄

Laravel_環境建置

首先我要先訴說這之後要做的網頁類型,主要是講從環境建置到美化,做出一個始於自己的作品集簡易網頁。 那接觸的第一天,先來將環境建置好,雖然是一人作業,但第4個太重要了,所以我想列入安裝列表,以下需要安裝這些軟體: 1.XAMPP 2.Composer 3.Visual Studio Code(程式編碼軟體,可以選擇用自己習慣的軟體) 4.Git(合作專案需要用到) (more…)
學程式助教
November 21, 2019
戰略紀錄

ES6: export default 和 export 的差別

歷史上,JavaScript 沒有 module 的體系,無法將一個大程序拆分成互相依賴的小模組在用更簡單的方式拼湊起來。 ruby 有 require python 有 import CSS 有 @import 在一個檔案內 export default 只能有一個,而 export 可以有多個 如果只透過 export 時,在 import 必須加入花刮號 {}  來導入 兩者都可以導入常量、函數、檔案、模組 export 對應的 import 需要知道 export 拋出的變量名或函數名 export default…
學程式助教
November 21, 2019
戰略紀錄

什麼是 B+ Tree

上一篇學習 什麼是 B-Tree 這篇就來補 B+ Tree 囉 B+ Tree 特徵 每個葉子節點都帶有指向下一個節點的指針,形成有序鏈表,加速範圍查詢 只有葉子節點帶衛星數據,父節點只帶關鍵字與指針,單一節點更省空間,讓查詢 I/O 變小 所有查詢都會查到葉子節點,查詢性能穩定 B+ Tree 更加矮胖 B+ Tree 中的內部節點,只存放關鍵字與子節點的指針,不存其他的 Satellite Information,因此最大化了內部節點的分支因子,所以說以同樣大小的硬碟分頁可以容納更多的節點元素。 換句話說,以數據量相同的情況下, B+ Tree 會比…
學程式助教
November 21, 2019
戰略紀錄

什麼是 B-tree (Balance tree)

一般像是 MySQL PostgreSQL 都是用 Btree 的方式建立索引。 注意:B-tree 不念 B減樹,而是直接念 Btree,所以如果看到 Btree vs B-tree 其實是在講同一個算法。 為什麼用 Btree 用二元樹進行查詢,最快的時間複雜度是 O(logN),以算法邏輯上面來說,二元樹搜尋的查找速度跟比較次數都是最小的,但是要注意的事,我們還需要考量一個現實的問題就是「硬碟 I/O」。 二元樹結構: 數據庫的索引都是儲存在硬碟上,當數據量龐大時,索引的大小可能會有幾 G 甚至更多。 我們不可能在透過索引查詢時,一次把幾 G…
學程式助教
November 21, 2019
戰略紀錄

Pandas 第2講:Python資料處理套件Pandas資料儲存物件

Open Data: Mobile App Statistics (Apple iOS app store) 當我們在使用python進行一些基本的資料處理時,很常使用python原生的物件,像是 list() , dict() 去存取及運用資料,但當我們的資料變得複雜的時候,這些原生物件反而顯得有些不便,像是二維陣列的元素計算就是較為複雜的資料形式,每一次的運算可能都要使用多個巢狀迴圈去處理,所以面對這種複雜且大量的資料,我們需要專門處理資料的套件幫我們節省一些作業時間,讓我們可以專心的研究資料內容。 使用資料表 (more…)
學程式助教
November 21, 2019
戰略紀錄

React效能優化基本招

會慢基本都是慢在 render function,如果巢狀 components 從父節點開始重新渲染,導致下面的子節點跟著重新 render 就會不必要的效能浪費。 所以基本招大致上是兩招, 區分何時用 Component 和 PureComponent 的時機 shouldComponentUpdate 阻擋不必要渲染 (more…)
學程式助教
November 20, 2019
戰略紀錄

coding第十講:如何開發一個App或網站

拿筆寫??? 今天要來聊聊如何開發App或網站。一樣,我覺得這種技術並不是「學校上個課就可以學到的東西」。 先說說我自己的經驗,當初自己對軟體工程師的想像也是「製作產品的人」。而以政大資管來說,大一的程式設計教的語言為Java,期中期末都是考物件導向的觀念,題目大致上就是改改小考、lab作業,老師會給一個類似系統分析文件的檔案,用紙筆寫下code,這都是上學期。 (more…)
學程式助教
November 16, 2019