1. 程式人生 > >Matlab使用新發現1(小技巧:shell 命令、工程工作目錄設定相關)

Matlab使用新發現1(小技巧:shell 命令、工程工作目錄設定相關)

最近在除錯一個基於Matlab的程式,在偶然間發現了幾個比較有趣的技巧,給大家分享一下很可能是太菜鳥了,沒有涉及這方面,大方之家請勿見笑,對您有所幫助請點贊!

1. Matlab語言是一種解釋型語言(interpreter)

就像我在總結軟體架構資料流時的一種:Interpreter / virtual machine (直譯器/虛擬機器),具體架構可以參看以下博文:http://blog.csdn.net/lg1259156776/article/details/46802107(解釋性語言對應著編譯型語言類似C、C++...等)

似乎這類解釋型的語言,基本上的操作命令都是相似的,因此我在matlab下嘗試著用Linux shell指令碼語言進行了命令列的輸入,沒想到很多shell命令在matlab下也是可以工作的,甚至格式都不用調整,比如:cd ../data/, ls命令,利用Tab鍵進行命令索引等功能

,這幾個操作命令還是對開發十分便捷的。

2. Matlab工程工作目錄設定

其實對於簡單的matlab工程幾乎不需要特殊的工程目錄,直接把對應的.m檔案拖入命令視窗就可以把運行了。

但是對於較為複雜的工程,甚至是在不同工程下有共享檔案(函式)的情況,這樣單一目錄就顯得有些單薄了。舉例說明,在機器學習的訓練中,一種常常使用的將演算法和資料分對應的目錄放置,同時在訓練時總要load進來,而有些data下面還有很多小的分類目錄,這樣在寫load命令時就顯得有些臃腫,最好的方法是直接通過一個命令把所有大資料夾下面的所有子資料夾的目錄都包含進去,這樣對於工程設定就顯得比較便捷:檔案組織上通過不同資料夾將方法和資料分開,而工程呼叫上則類似於所有的方法和資料都放在了同一個目錄下,可以直接呼叫或load。

囉嗦了這麼多,這個很重要的命令就一句:

addpath(genpath('E:\MatlabProject\MachineLearning'));

實現的功能就是把所有MachineLearning下的子資料夾新增到工程目錄中,實現簡單的呼叫。

3. Matlab精度設定

十分常見的關於調整matlab輸出資料精度的問題,可以通過以下命令便捷實現:

digits(20);%20位有效數字,全程設定顯示精度

a=vpa(sqrt(2));%對參與的每個運算都設定精度

*******************************************隨時發現,隨時記錄*************************************************