乐于分享
好东西不私藏

R,统计计算和数据可视化软件

R,统计计算和数据可视化软件

R,统计计算和数据可视化软件

R语言是一种主要用于统计计算、数据分析、数据可视化和科学研究的计算机编程语言与软件环境。它既是一门编程语言,也是一套统计计算平台。

R语言最大的特点是:

  • • 面向统计分析而设计;
  • • 拥有极其丰富的统计建模和数据可视化功能;
  • • 开源免费;
  • • 包生态系统非常庞大;
  • • 在学术研究、生物统计、社会科学、金融、公共卫生、数据科学等领域应用广泛。

R语言常被称为“统计学家的语言”,因为许多新的统计方法、模型和算法往往会首先以R包的形式发布。

一、历史背景

R语言由新西兰奥克兰大学的Ross Ihaka和Robert Gentleman于1993年开发,最初是作为S语言的一个开源实现。

R语言并不是凭空出现的,它的思想来源于S语言。

S语言最早由贝尔实验室的John Chambers及其同事在20世纪70年代末到80年代开发。S语言的目标是提供一种适合统计分析、数据探索和图形展示的交互式语言环境。

R语言的名字来源于两位创始人名字的首字母,同时也是对S语言的致敬。

关键时间节点:

  • • 1993年:R语言诞生
  • • 1995年:采用GNU通用公共许可证,成为自由软件
  • • 1997年:R核心开发团队(R Core Team)成立
  • • 2000年:R 1.0.0版本发布,标志着语言进入稳定阶段
  • • 2004年:R 2.0.0发布,引入惰性加载机制
  • • 2013年:R 3.0.0发布,支持长向量(超过2^31-1个元素)
  • • 2020年:R 4.0.0发布,改进字符串处理,stringsAsFactors默认为FALSE
  • • 2021年:R 4.1.0引入原生管道操作符|>
  • • 2023年:R 4.3.0进一步优化性能

二、语言优势

语法在一定程度上是相当简介的,比如线性模型对象:

model <- lm(y ~ x, data = data)summary(model)plot(model)

1. 统计分析能力

R语言最大的优势之一是统计分析。它内置或通过扩展包支持大量统计方法,包括:

  • • 内置统计函数丰富:涵盖描述性统计、假设检验、回归分析、时间序列、多元分析等
  • • 专业统计方法:生存分析、混合效应模型、贝叶斯统计等领域有成熟实现
  • • 统计学家首选:大量最新统计方法首先在R中实现

2. 数据可视化

  • • 基础绘图系统:功能强大,可精细控制每个图形元素
  • • ggplot2包:基于图形语法,创建出版级图表
  • • 交互式可视化:plotly、shiny等支持动态交互
  • • 专业图表:热图、网络图、地理信息可视化等
用途
plotly
交互式统计图
leaflet
地理空间可视化
DT
交互式表格
echarts4r
ECharts接口
highcharter
Highcharts接口
shiny
交互式Web应用

3. 包生态系统

  • • CRAN:官方仓库拥有超过20,000个包(截至2024年)
  • • Bioconductor:生物信息学专用仓库,超过2,000个包
  • • GitHub:大量开发中的包
  • • 领域覆盖:几乎所有数据分析领域都有专业包

4. 数据处理能力

  • • 向量化操作:高效处理数组和矩阵运算
  • • tidyverse生态:dplyr、tidyr等提供现代化数据处理语法
  • • 数据导入导出:支持CSV、Excel、数据库、JSON、XML等多种格式
  • • 大数据支持:data.table、arrow等包处理大规模数据
功能
dplyr
数据筛选、分组、汇总、变换
tidyr
数据整理,长宽格式转换
ggplot2
数据可视化
readr
读取文本数据
readxl
读取Excel数据
stringr
字符串处理
forcats
因子处理
purrr
函数式编程
tibble
现代数据框
lubridate
日期时间处理

5. 可重复性研究

R语言在统计学、生物统计、流行病学、社会科学、心理学、生态学等领域非常流行。

  • • R Markdown:整合代码、结果和文档
  • • knitr:动态报告生成
  • • Quarto:新一代科学出版系统
  • • 版本控制友好:纯文本脚本易于Git管理
工具
功能
R Markdown
将代码、文字、图表、结果整合成报告
knitr
动态报告生成
bookdown
写书、长文档、论文
blogdown
创建博客和网站
Quarto
新一代科学出版系统,支持R、Python、Julia
renv
项目依赖管理
targets
工作流管理

三、重要版本更新

R 2.x系列(2004-2013)

  • • 引入命名空间机制
  • • 改进内存管理
  • • 增强包管理系统

R 3.x系列(2013-2020)

  • • 3.0.0:支持长向量,突破内存限制
  • • 3.1.0:改进正则表达式引擎
  • • 3.4.0:即时编译(JIT)默认启用
  • • 3.5.0:改进序列化格式
  • • 3.6.0:随机数生成器更新

R 4.x系列(2020至今)

  • • 4.0.0:stringsAsFactors默认FALSE,减少初学者困惑
  • • 4.1.0:原生管道|>和匿名函数简写(x)
  • • 4.2.0:改进图形设备和UTF-8支持
  • • 4.3.0:性能优化,加快包加载速度
  • • 4.4.0(2024):进一步改进内存效率

四、应用场景与领域

1. 学术研究

  • • 生物医学研究:临床试验分析、基因组学、蛋白质组学
  • • 社会科学:问卷调查分析、心理学实验、经济学研究
  • • 环境科学:生态建模、气候数据分析
  • • 物理化学:实验数据处理、模拟结果分析
用途
DESeq2
RNA-seq差异表达分析
edgeR
RNA-seq差异表达分析
limma
芯片和RNA-seq分析
GenomicRanges
基因组区间操作
SummarizedExperiment
生物组学数据结构
SingleCellExperiment
单细胞数据结构
Biostrings
生物序列处理

2. 商业应用

  • • 金融分析:风险建模、投资组合优化、量化交易
  • • 市场研究:客户细分、A/B测试、市场篮分析
  • • 保险精算:定价模型、索赔预测
  • • 零售分析:需求预测、库存优化
功能
quantmod
金融数据获取与分析
PerformanceAnalytics
投资组合绩效评估
rugarch
GARCH模型
forecast
时间序列预测
vars
向量自回归
plm
面板数据模型
xts
时间序列数据结构
zoo
不规则时间序列

3. 数据科学

  • • 机器学习:caret、mlr3、tidymodels框架
  • • 深度学习:keras、torch接口
  • • 自然语言处理:text mining、情感分析
  • • 推荐系统:协同过滤、内容推荐
功能
caret
传统机器学习统一接口
mlr3
现代机器学习框架
tidymodels
tidyverse风格机器学习框架
randomForest
随机森林
xgboost
梯度提升树
e1071
SVM等模型
nnet
神经网络
ranger
高效随机森林
glmnet
LASSO、Ridge、Elastic Net

4. 生物信息学

  • • 基因表达分析:DESeq2、edgeR
  • • 单细胞测序:Seurat、Scanpy接口
  • • 基因组注释:GenomicRanges
  • • 系统发育分析:ape、phytools

常见应用:

  • • RNA-seq差异表达分析;
  • • 单细胞测序分析;
  • • 基因集富集分析;
  • • 甲基化数据分析;
  • • 蛋白质组学分析;
  • • 生存分析;
  • • 临床组学整合分析。

5. 政府与公共卫生

  • • 流行病学建模:疾病传播模拟
  • • 人口统计分析:人口普查数据处理
  • • 政策评估:因果推断、倾向得分匹配
  • • 公共卫生监测:疫情数据可视化
功能
psych
心理统计
lavaan
结构方程模型
lme4
混合效应模型
brms
贝叶斯模型
quanteda
文本分析
igraph
网络分析

五、与MATLAB、Python、Julia的详细对比

语言
核心定位
典型用户
最大优势
主要限制
R
统计计算、数据分析、图形
统计学家、数据分析师、科研人员
统计和可视化生态强
通用软件开发能力较弱
MATLAB
矩阵计算、工程仿真
工程师、控制、信号处理人员
工程工具箱和仿真能力强
商业软件,费用高
Python
通用编程、数据科学、AI
程序员、数据科学家、AI工程师
通用性强,生态最大
统计细分领域不如R专精
Julia
高性能科学计算
科学计算、数值模拟研究者
接近C的性能,语法现代
生态和人才规模较小

1. 语言特点对比

R语言

  • • 设计哲学:专为统计分析设计
  • • 编程范式:函数式编程为主,支持面向对象(S3、S4、R6)
  • • 数据结构:向量、矩阵、数据框(data frame)、列表
  • • 索引方式:从1开始,支持负索引(排除元素)
  • • 性能:解释型语言,循环较慢,向量化操作快
  • • 内存管理:自动垃圾回收,复制-修改语义(copy-on-modify)

MATLAB

  • • 设计哲学:矩阵运算和工程计算
  • • 编程范式:过程式编程,面向对象支持
  • • 数据结构:矩阵为核心,数组、结构体、表格
  • • 索引方式:从1开始
  • • 性能:高度优化的线性代数库,JIT编译
  • • 内存管理:自动管理,写时复制(copy-on-write)
  • • 商业软件:需要购买许可证,价格昂贵

Python

  • • 设计哲学:通用编程语言,强调代码可读性
  • • 编程范式:多范式(面向对象、函数式、过程式)
  • • 数据结构:列表、字典、元组、集合;NumPy数组、Pandas数据框
  • • 索引方式:从0开始
  • • 性能:解释型,但NumPy/SciPy底层用C/Fortran,性能优秀
  • • 内存管理:引用计数+垃圾回收
  • • 生态系统:最广泛,涵盖Web、自动化、数据科学、AI等

Julia

  • • 设计哲学:解决”两语言问题”,高性能科学计算
  • • 编程范式:多范式,多重派发(multiple dispatch)为核心
  • • 数据结构:数组、字典、元组、DataFrame
  • • 索引方式:从1开始
  • • 性能:JIT编译,接近C/Fortran速度
  • • 内存管理:自动垃圾回收
  • • 类型系统:动态类型+可选静态类型,类型推断强大
特征
R
MATLAB
Python
Julia
数组索引
从1开始
从1开始
从0开始
从1开始
核心数据结构
向量、数据框、列表
矩阵、数组、表
list、dict、NumPy array、DataFrame
Array、DataFrame、Dict
数据框支持
原生data.frame,tibble
table
pandas DataFrame
DataFrames.jl
统计建模公式
非常成熟
一般
statsmodels支持
有支持但生态较小
向量化
依赖NumPy
面向对象
S3/S4/R6
支持
多重派发为核心
函数式编程
较强
一般
支持
交互式分析
工程部署
一般
一般
中等

2. 学习难易度对比

语言
入门难度
原因
Python
较低
语法清晰,资料丰富,适合零基础
MATLAB
较低到中等
IDE友好,矩阵操作直观
R
中等
统计语法直观,但语言细节较特殊
Julia
中等
语法不难,但类型、多重派发和性能优化较复杂

R语言

  • • 入门难度:中等
    • • 优势:统计函数直观,数据框概念易理解
    • • 挑战:多种对象系统(S3/S4/R6)令人困惑,函数式编程思维需要适应
  • • 进阶难度:中等偏高
    • • 非标准求值(NSE)机制复杂
    • • 包开发需要理解命名空间和文档系统
  • • 适合人群:统计学背景、数据分析师、研究人员

MATLAB

  • • 入门难度:较低
    • • 语法简洁,矩阵操作直观
    • • IDE集成度高,调试方便
  • • 进阶难度:中等
    • • 工具箱丰富但需额外购买
    • • 大型项目组织需要经验
  • • 适合人群:工程师、信号处理、控制系统研究者

Python

  • • 入门难度:最低
    • • 语法清晰,接近自然语言
    • • 资源丰富,社区活跃
  • • 进阶难度:中等
    • • 数据科学栈(NumPy、Pandas)需要学习
    • • 异步编程、装饰器等高级特性
  • • 适合人群:编程初学者、全栈开发者、数据科学家

Julia

  • • 入门难度:中等
    • • 语法类似Python和MATLAB
    • • 类型系统和多重派发需要理解
  • • 进阶难度:较高
    • • 性能优化需要理解编译器行为
    • • 生态系统相对不成熟,需要自己解决问题
  • • 适合人群:有编程基础、追求性能的科学计算用户
学习者背景
推荐语言
统计学、流行病学、生物统计
R
计算机、软件开发、AI
Python
自动化、信号处理、控制、通信
MATLAB
数学、物理、科学计算、数值模拟
Julia或Python
完全零编程基础
Python通常最友好
已经熟悉统计模型
R上手较快
已经熟悉矩阵计算
MATLAB或Julia较顺手

3. 相关资料对比

R语言

  • • 官方文档:完善,但较技术化
  • • 书籍:大量统计和数据科学书籍
    • • 《R语言实战》
    • • 《R数据科学》(R for Data Science)
    • • 《高级R语言编程》(Advanced R)
  • • 在线资源
    • • CRAN Task Views(按领域分类的包推荐)
    • • RStudio教程和速查表
    • • R-bloggers博客聚合
  • • 社区:Stack Overflow活跃,RStudio Community

MATLAB

  • • 官方文档:非常详细,示例丰富
  • • 书籍:工程和科学计算领域书籍多
  • • 在线资源
    • • MathWorks官方教程
    • • MATLAB Central文件交换
  • • 社区:官方论坛,但相对封闭
  • • 劣势:免费资源少,依赖官方生态

Python

  • • 官方文档:清晰易懂
  • • 书籍:海量,涵盖所有领域
    • • 《Python数据科学手册》
    • • 《利用Python进行数据分析》
    • • 《深度学习入门:基于Python的理论与实现》
  • • 在线资源
    • • 最丰富的教程、博客、视频
    • • Kaggle、DataCamp等学习平台
  • • 社区:最大最活跃,Stack Overflow、GitHub、Reddit

Julia

  • • 官方文档:质量高,但部分领域覆盖不足
  • • 书籍:相对较少,但在增长
    • • 《Julia高性能科学计算》
  • • 在线资源
    • • JuliaAcademy免费课程
    • • Discourse论坛活跃
  • • 社区:小但热情,响应快
  • • 劣势:中文资源稀缺

4. 应用场景与领域对比

语言
适合程度
说明
R
极强
统计包最丰富,学术界认可度高
Python
statsmodels、scipy、pingouin等可用,但细分统计不如R
MATLAB
中等
有统计工具箱,但生态不如R
Julia
中等
增长中,但成熟度不如R/Python

R语言最佳场景

  • • 统计分析:假设检验、回归模型、生存分析
  • • 生物信息学:基因组学、转录组学
  • • 学术研究:可重复性研究、论文图表
  • • 数据可视化:出版级静态图表
  • • 金融建模:时间序列、风险分析

MATLAB最佳场景

  • • 信号处理:滤波、频谱分析
  • • 图像处理:计算机视觉、医学影像
  • • 控制系统:Simulink建模仿真
  • • 工程计算:有限元分析、优化问题
  • • 教育:工程课程教学

Python最佳场景

  • • 机器学习/深度学习:TensorFlow、PyTorch生态
  • • Web开发:Django、Flask
  • • 自动化脚本:系统管理、数据爬取
  • • 通用数据科学:数据清洗、探索性分析
  • • 生产部署:API服务、模型上线
  • • 跨领域集成:连接数据库、云服务、各种API

Julia最佳场景

  • • 高性能科学计算:大规模数值模拟
  • • 微分方程求解:DifferentialEquations.jl
  • • 优化问题:JuMP优化建模
  • • 并行计算:原生并行支持
  • • 研究原型:需要性能的算法开发

六、选择数据处理语言的详细依据

语言
适合程度
说明
R
dplyr、data.table非常优秀
Python
极强
pandas、polars、dask、pyarrow生态强
MATLAB
中等
table可用,但数据工程生态弱
Julia
DataFrames.jl性能好,但生态小

1. 根据专业背景选择

统计学/生物统计背景 → R

  • • 统计方法最全面最新
  • • 学术界标准工具
  • • 论文可重复性支持好

工程/物理背景 → MATLAB或Julia

  • • MATLAB:已有工具箱投资,团队使用
  • • Julia:追求开源和性能

计算机科学/软件工程背景 → Python

  • • 通用编程能力强
  • • 易于集成到软件系统
  • • 职业发展路径广

2. 根据任务类型选择

语言
适合程度
说明
Python
极强
数据接口、回测、机器学习、部署方便
R
时间序列和统计建模优秀
MATLAB
中等
金融工具箱可用但成本高
Julia
中等到强
适合高性能优化和模拟

纯统计分析

  • • 首选:R(统计方法最丰富)
  • • 备选:Python(statsmodels、scipy.stats)

机器学习

  • • 首选:Python(scikit-learn、XGBoost、深度学习框架)
  • • 备选:R(caret、tidymodels)
语言
适合程度
说明
Python
极强
scikit-learn、PyTorch、TensorFlow生态领先
R
caret、tidymodels、mlr3等适合统计型机器学习
MATLAB
中等到强
有机器学习工具箱,但商业生态
Julia
中等到强
Flux.jl等发展中,科学计算结合好

数据可视化

  • • 静态出版级图表:R(ggplot2)
  • • 交互式仪表板:Python(Plotly Dash)或R(Shiny)
  • • 探索性可视化:Python(Seaborn、Plotly)
语言
适合程度
说明
R
极强
ggplot2是统计图形标杆
Python
matplotlib、seaborn、plotly、bokeh等丰富
MATLAB
工程图形方便
Julia
中等到强
Plots.jl、Makie.jl等发展快

大规模数值计算

  • • 首选:Julia(性能最优)
  • • 备选:Python(NumPy/Numba)或MATLAB
语言
适合程度
说明
Julia
极强
JIT编译,高性能,适合数值算法
Python
NumPy、Numba、Cython、JAX可加速
MATLAB
矩阵运算优化成熟
R
中等
可通过Rcpp、data.table等优化

生物信息学

  • • 首选:R(Bioconductor生态无可替代)
  • • 备选:Python(Biopython、Scanpy)
语言
适合程度
说明
R
极强
Bioconductor生态领先
Python
scanpy、biopython等强
Julia
中等
生态较小
MATLAB
较弱
非主流

生产环境部署

  • • 首选:Python(成熟的Web框架、容器化支持)
  • • 备选:R(plumber API、Docker)
语言
适合程度
说明
MATLAB
极强
Simulink优势明显
Python
中等到强
scipy、control等可用
Julia
微分方程、优化很强
R
较弱
不适合复杂工程仿真

3. 根据团队和生态选择

团队已有技术栈

  • • 优先考虑团队现有语言,降低协作成本

行业标准

  • • 金融量化:Python和R并重
  • • 制药临床试验:R主导
  • • 互联网公司:Python主导
  • • 学术界:看具体领域,生物医学多用R,AI多用Python

招聘和人才

  • • Python开发者最多,招聘容易
  • • R专家在统计领域集中
  • • Julia人才稀缺但增长中

4. 根据项目阶段选择

探索性分析阶段

  • • R或Python都合适
  • • R的RStudio和Python的Jupyter都提供良好交互环境

原型开发

  • • Python:快速迭代,库丰富
  • • Julia:需要高性能原型

生产部署

  • • Python:最成熟的部署方案
  • • R:可行但需要额外工作(Docker、API封装)

5. 根据性能需求选择

性能不是瓶颈(数据量<1GB)

  • • R和Python都可以,选择更熟悉的

中等性能需求(1-10GB数据)

  • • R:使用data.table包
  • • Python:使用Pandas + Dask
  • • Julia:原生性能优秀

高性能需求(>10GB或复杂计算)

  • • Julia:最佳选择
  • • Python:Numba、Cython加速
  • • R:Rcpp调用C++

6. 根据学习成本选择

快速上手(1-2周)

  • • Python:语法最简单
  • • MATLAB:工程背景易上手

深入掌握(3-6个月)

  • • R:统计分析专精
  • • Python:全栈能力

长期投资

  • • Python:应用最广,投资回报率高
  • • R:统计领域不可替代
  • • Julia:未来潜力大,但当前风险高

7. 实际建议

单一语言策略

  • • 选Python:如果需要通用性、部署、机器学习
  • • 选R:如果专注统计分析、学术研究、生物信息
  • • 选Julia:如果是高性能计算研究者,愿意承担生态不成熟风险

双语言策略(推荐)

  • • R + Python:最常见组合
    • • R做统计分析和可视化
    • • Python做数据工程、机器学习、部署
    • • 使用reticulate包在R中调用Python,或rpy2在Python中调用R
任务
推荐语言
数据清洗
R或Python
统计建模
R
论文图表
R
生物信息分析
R
机器学习
Python
深度学习
Python
爬虫
Python
自动化脚本
Python
Web API部署
Python
交互式统计报告
R Shiny或Python Dash

避免的选择

  • • 不要同时学三种以上语言,精力分散
  • • 不要为了”学新技术”而选Julia,除非有明确性能需求
  • • 不要在团队无人使用的情况下独自选择小众语言
需求
最推荐
次推荐
统计分析
R
Python
论文图表
R
Python
医学统计
R
SAS/Python
生物信息学
R
Python
单细胞分析
R/Python
Julia
机器学习
Python
R
深度学习
Python
Julia
数据清洗
Python/R
Julia
大型数据工程
Python
Scala/SQL
金融量化
Python
R
时间序列
R/Python
MATLAB
控制系统
MATLAB
Python
信号处理
MATLAB/Python
Julia
数值模拟
Julia
MATLAB/Python
优化建模
Julia
Python/MATLAB
Web部署
Python
R
企业生产系统
Python
Java/Go
教学统计
R
Python
工程教学
MATLAB
Python
开源低成本
Python/R/Julia
不推荐MATLAB
初学编程
Python
R
科研统计
R
Python
高性能算法研究
Julia
C++/Python

8. 决策流程图

开始├─ 是否有预算限制?│  └─ 是 → 排除MATLAB│  ├─ 主要任务是什么?│  ├─ 统计分析/生物信息 → R│  ├─ 机器学习/Web开发 → Python│  ├─ 工程仿真/信号处理 → MATLAB(有预算)或Python│  └─ 高性能科学计算 → Julia或Python├─ 团队技术栈?│  └─ 优先选择团队已用语言├─ 职业发展考虑?│  ├─ 学术界统计方向 → R│  ├─ 工业界数据科学 → Python│  └─ 科学计算研究 → Julia└─ 学习时间?   ├─ 快速上手 → Python   └─ 深度专精 → 根据领域选R或Python

R语言在统计分析、生物信息学和学术研究领域具有不可替代的地位,其丰富的统计包和强大的可视化能力是最大优势。Python则以通用性、易学性和最广泛的生态系统胜出,特别适合需要集成部署的项目。MATLAB在工程领域仍有优势但受限于商业许可。Julia代表未来高性能科学计算方向,但生态尚不成熟。

对于数据处理,如果专注统计分析选R,如果需要全面数据科学能力选Python,如果两者都需要则学习R+Python组合。最终选择应基于具体应用领域、团队环境和个人职业规划综合考虑。


公众号《博優旮旯-BOYOGALA》,致力于让大家更专业、更完整和更系统地获取与了解数学(运筹与优化、数值分析)等相关数学知识分享!

🎯公众号ID:boyogala,🌐网址: www.boyogala.us.kg,💬微信: boyougala,📧邮箱: boyogala@qq.com.

说明文档:公众号《博優旮旯-boyogala》的使用指南,以下罗列代表作可供查阅.

优化求解器 — 代表作Ipopt开源免费的非线性求解器,HiGHS开源免费整数线性求解器,SCIP开源免费的优化求解器,Gurobi商业收费全局优化求解器,CPLEX商业收费整数优化求解器,MOSEK商业收费的优化求解器,BARON商业收费的全局优化求解器,LindoAPI商业收费的全局优化求解器,COPT国产自研的优化求解器

三大数学软件 — 代表作MATLAB工程师的科学计算软件,MATHEMATICA物理的计算软件,MAPLE数学家的数学软件

MathCAD,所见及所得的工程计算软件

嵌入式、无人机和机器人 — 代表作OSQP二次规划求解器

线性方程组的求解软件 — 代表作PARDISO并行直接求解器,MUMPS高性能并行求解器,SuitSparse稀疏矩阵软件包,SuperLU非对称直接法求解器SPRAL, 稀疏并行鲁棒算法库cuDSS:GPU加速稀疏直接求解器详解

基于MATLAB的优化建模工具 — 代表作CVX免费凸优化建模工具,Yalmip免费的优化建模工具,CasADi开源最优化控制工具

基于Python的优化建模工具 — 代表作CasADi非线性优化和最优控制,Gekko数值优化和动态系统建模,Pyomo面向对象代数建模语言

科学计算软件 — 代表作oneAPI统一的异构编程模型,CUDA人工智能时代的基石,OpenFOAM开源的CFD软件,COMSOL业界多物理场仿真软件Julia, 科学计算与高性能编程语言

全球优化建模平台 — 代表作AMPL数学规划建模语言,AIMMS快速优化建模工具,GAMS通用代数建模系统,JuMP数学优化建模语言(学习中…)

数学是第三世界 — 代表作矩阵空间中的特殊矩阵