發表文章

目前顯示的是有「程式語言」標籤的文章

[資料探勘]Java ETL技巧整理

圖片
ETL ETL = Extract-Transform-Loading 過程 Raw Data -> ETL Script -> Tidy Data (結構化資料) Java FileReader  把檔案裡的字元讀進來以後呢,轉換成看得懂的文字。 FileReader fReader = new FileReader ("filename") BufferedReader 為所接受到的內容建立一個緩衝的功能。 bReader = new BufferedReader(fReader); e.g. BufferedReader bReader = null; String line; FileReader fReader; fReader = new FileReader("filename.txt"); bReader = new BufferedReader(fReader); while((line= bReader.readLine()) != null){          System.out.println(line); } ***為什麼要有BufferedReader?(用BufferReader接載FileReader) 因為如果資料量很大的話,主記憶體又有限,一次讀進來的話 會用掉很多記憶體,所有BufferedReader可以針對Buffer進行 資料段的讀取、修改與刪除。 Scanner Scanner 可以使用正規表達式(Regular Expression) 剖析(Parsing)基本資料型態與字串 Scanner sc = new Scanner (new File("FileName")); while(sc.hasNextLine()){     String next = sc.nextLine(); }

8-Bit Plane Slicing 位元平面分割 詳細解說 # 附 Python 程式碼

圖片
[影像處理 Image Processing] 8-Bit Plane Slicing 位元平面分割 詳細解說 # 附 Python 程式碼 觀念解說︰ 8-bit plane slicing 主要作用於進行影像處理時,在影像中 切割出高頻與低頻的資訊 。 可以參考這張圖片幫助理解 8-bit plane slicing 分割抽像圖 如上圖所示,你可以想像,在一張灰階(8-bits)圖片的每一個像素pixel將被分層切割(0-7層), 總共8層 ,像漢堡一樣,這就是 8-bit plane slicing 。 在一張 灰階圖片 ,其像素值範圍是 0 - 255 ,分別用於表達不同的深淺灰度,而圖片中每一個像素點(pixel),都會有一個像素值(pixel value)。這一章將會以灰階圖片作為示例。 像素點、像素值的解釋,可以參考這篇文章。 其實圖片在數值處理上,就像一張 網格 , 網格裡每一個格子都有不同的數值,代表著不同的顏色 。(RGB色彩圖示則用了三層的網格去表示,每一格由 RED, GREEN, BLUE 三種顏色組成) 計算方法︰ 8-bit plane slicing 其實就是將每一個像素值(pixel value)的二進制值,以其每個位數 (2 0 - 2 7 ) 進行過濾。 假設以下表格是一張 灰階圖片 的像素值(數值範圍0-255)︰ 217 97 85 21 219 115 177 204 104 e.g. 網格裡每一個格子都有不同的數值,代表著不同的顏色。(如上所示) ( 0 - 255) 1. 首先我們可以將灰階圖片裡的所有像素值 (範圍︰0 - 255) 轉為2進制表達。 十進制 二進制 0 0000 0000 1 0000 0001 2 0000 0010 3 0000 0011 ...... ...... 127 0111 1111 ...... ...... 255 1111 1111 2. 然後我們將圖片裡的每一格像素(pixel),抽取其二進制值每個位數的值,成為Bit-plane。我將會以下方像素值為例︰ 217 97 85 21 219 115 177 204 104 像素...

Java SE/ Java EE/ Java ME 的分別

Java Java雖然是程式語言(Programming language),其實也同時是平台(platform)技術。 程式語言(Programming language)由運用特定形式的語言和字符幫助我們建立程式的處理邏輯,而平台(platform)提供了程式編譯(complie)及運行(execute)的環境(environment)。 Platform Java語言的平台(platform)環境主要是由JVM(Java Virtual Machine)負責編譯程式碼轉為機器碼 、 API(Application Programming Interface)提供函式庫 及其他基本元件 組成的。 而Java官方總共有提供3種主要體系的Platform︰ Java Platform Standard Edition(Java SE) Java Platform Enterprise Edition(Java EE) Java Platform Micro Edition(Java ME) 以上3種Patform都會提供該Platform版本的JVM及API給使用者使用。 Java SE︰提供基本的核心的功能。包含了基本類型的Classes和一些開發應用程序用到的Classes (e.g. networking, security, graphical user interface etc.) Java EE︰EE是建立在SE之上,它是企業版,其主要目的是為在企業中運行的大規模應用程序提供解決方案。 Java ME︰是Java SE的subset,以及包含特定種類的Class libraries,這些Classes通常用於開發行動裝置應用程式。

Python免費學習網站介紹-Snakify

圖片
[程式語言]Python免費學習網站介紹-Snakify 今天想給大家介紹一個不錯的程式語言教學網站 Snakify , 這是一個 Python、HTML5、JavaScript、Jquery 教學網站。可以直接在網站進行即時的程式練習,並且自動批改。