官术网_书友最值得收藏!

1.3.1 腳本語言軟件

典型腳本語言軟件包括R、Python、MATLAB等,依靠編程腳本、交互式開發和大量工具包支撐分析建模。

R是一套完整的數據處理、計算和制圖軟件系統。R語言有著完整數據讀取、預處理、統計分析、機器學習、制圖/報告等功能的編程語言,R語言的優勢在于統計分析,有1萬多個官方工具包,對統計分析、機器學習算法和周邊效率工具的支持非常完善。R語言的核心數據類型是數據框(Data Frame),同時也支持矩陣或向量運算,數據框類似于關系數據查詢組件中的recordSet,是由有相同屬性列構成的記錄集,不同列的類型可以不同。數據框的概念也逐步被Python(2008年發布第1版pandas包)、MATLAB等軟件采納。為提高計算能力,R語言也提供了C、C++、Fortran等語言的開發接口。RStudio作為R語言最常用的IDE(集成開發環境),提供了很多便捷性的交互式開發調試功能,也支持Python、C/C++、HTML、Markdown等語言的開發。

MATLAB是著名的科學計算軟件包,對矩陣運算、數值分析、圖形顯示和工程分析算法(如控制系統設計、信號處理)支持非常完備,動力學仿真包Simulink不僅僅支持連續動力學系統的仿真,也支持離散事件系統的仿真,除了數值仿真,也支持半物理仿真(通過PLC、通信協議接口)。在機器學習方面,MATLAB從2018年開始提供了Statistics and Machine Learning Toolbox。

Python是一種跨平臺的高級編程語言,可以應用在多個領域,尤其是深度學習領域。Python擁有numPy、sciPy、matplotlib等科學計算包,也有scikit-learn、pandas等機器學習算法包。Python常用的IDE包括Spyder、pyCharm,也可以使用Vscode、Eclipse通用環境的Python插件。在交互式分析上,Jupyter notebook或Jupyter lab可以將分析過程與文檔工作同步進行。

由于Python底層是使用C語言寫的,很多標準庫和第三方庫也是用C語言寫的,因此相比R語言和MATLAB來說、Python的速度要更快,可移植性更強。但在統計算法和機器學習算法方面,R語言更豐富一些。需要注意,不要不加前提地對比運行速度,MATLAB、R、Python語言背后的矩陣運算都是基于BLAS、LAPACK等線性運算包(基于Fortran或C語言實現的,不同實現版本略有不同),如果采用內置的矩陣運算,MATLAB、R、Python語言之間的差別應該是很小的。因此,編程時應該盡量遵循一個軟件的前提假設與推薦習慣,例如,在MATLAB中盡量采用矩陣或向量運算,避免用標量循環。在R中,盡量用內置的數據框操作函數,避免用循環。

主站蜘蛛池模板: 辽宁省| 山丹县| 行唐县| 大足县| 来安县| 来安县| 玉屏| 五常市| 平顶山市| 明光市| 炎陵县| 额敏县| 浦江县| 县级市| 南皮县| 茌平县| 密云县| 洛浦县| 新竹市| 科尔| 清丰县| 桓仁| 隆安县| 南充市| 大新县| 广汉市| 巫山县| 金门县| 富裕县| 玉门市| 景德镇市| 修水县| 安国市| 公安县| 香港 | 临漳县| 兴城市| 康平县| 南溪县| 铁岭市| 大关县|