You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言中model.matrix函数里~.的含义是什么?

R中model.matrix(~., data)里~.的含义解析

在R的公式语法体系里,~和.是两个核心特殊符号,结合起来的作用如下:

  • ~:用于定义公式结构,分隔响应变量(左侧)和预测变量(右侧)。当左侧为空时,说明不需要指定响应变量(model.matrix本身就是生成预测变量的设计矩阵,这种写法非常常见)。
  • .:作为通配符,在公式右侧时,若公式左侧为空,代表数据集里的所有变量;若左侧有响应变量(比如y ~ .),则代表除响应变量外的所有其他变量。

举个实际例子更直观:
假设你有如下数据集:

sample_data <- data.frame(
  age = c(25, 30, 35),
  gender = c("F", "M", "F"),
  score = c(80, 85, 90)
)

运行model.matrix(~., sample_data)会自动把age、gender(转为哑变量)、score全部纳入,生成对应的设计矩阵,效果和手动写~age + gender + score完全一致。

内容的提问来源于stack exchange,提问作者Lisa Tassinari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 21:57:00