- 工業大數據分析算法實戰
- 田春華
- 881字
- 2023-05-06 17:52:27
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中,盡量用內置的數據框操作函數,避免用循環。
- 數據存儲架構與技術
- Mastering Ninject for Dependency Injection
- 使用GitOps實現Kubernetes的持續部署:模式、流程及工具
- MongoDB管理與開發精要
- Visual Studio 2015 Cookbook(Second Edition)
- Python數據分析、挖掘與可視化從入門到精通
- Spark核心技術與高級應用
- 網站數據庫技術
- Python金融數據分析(原書第2版)
- MATLAB Graphics and Data Visualization Cookbook
- 計算機應用基礎教程上機指導與習題集(微課版)
- SAS金融數據挖掘與建模:系統方法與案例解析
- Spring MVC Beginner’s Guide
- 數據賦能
- Delphi High Performance