R lm()$assign:是什么?

R lm()$assign:是什么?,r,glm,lm,s,R,Glm,Lm,S,线性模型拟合的assign属性是什么?它应该以某种方式提供响应项的位置,但实际上它似乎枚举了模型中的所有系数。我的理解是,assign是s的遗留,它不受glm()的支持。我需要提取glm的等效信息,但我不明白lm的实现做了什么,似乎也找不到源代码。lm.fit的帮助文件毫无帮助地说: 非空拟合将具有与线性拟合相关的组件分配、效果和(除非未要求)qr,供提取函数使用,如摘要和效果 您可以在帮助(“model.matrix”)中找到它,它创建了以下值: 有一个属性“assign”,一个整数向量,其中

线性模型拟合的
assign
属性是什么?它应该以某种方式提供响应项的位置,但实际上它似乎枚举了模型中的所有系数。我的理解是,
assign
是s的遗留,它不受
glm()
的支持。我需要提取
glm
的等效信息,但我不明白
lm
的实现做了什么,似乎也找不到源代码。
lm.fit
的帮助文件毫无帮助地说:

非空拟合将具有与线性拟合相关的组件
分配
效果
和(除非未要求)
qr
,供提取函数使用,如
摘要
效果


您可以在
帮助(“model.matrix”)
中找到它,它创建了以下值:

有一个属性“assign”,一个整数向量,其中包含 矩阵中的每列给出公式中的术语,公式中给出 站到柱子上。值0对应于截距(如果有),并且 按照term.labels给定的顺序将正值设置为term 对象对应的术语结构的属性


因此,它将设计矩阵映射到公式。

您可以在
帮助(“model.matrix”)
中找到它,它创建以下值:

有一个属性“assign”,一个整数向量,其中包含 矩阵中的每列给出公式中的术语,公式中给出 站到柱子上。值0对应于截距(如果有),并且 按照term.labels给定的顺序将正值设置为term 对象对应的术语结构的属性


因此,它将设计矩阵映射到公式。

来自
$assign
的数字表示相应的预测变量。如果您的预测值是3级分类的,您将在
$assign
调用中看到相应的数字(3-1)次。例如:

data(mpg, package = "ggplot2")
m = lm(cty ~ hwy + class,data = mpg)
m$assign 
  [1] 0 1 2 2 2 2 2 2
# Note how there is six 2's to represent the indicator variables
# for the various 'class' levels. (class has 7 levels)

您将看到定量预测值只有一个值(
hwy
,在上面的示例中),因为它们在设计公式中由一个术语表示。

来自
$assign
的数字表示相应的预测变量。如果您的预测值是3级分类的,您将在
$assign
调用中看到相应的数字(3-1)次。例如:

data(mpg, package = "ggplot2")
m = lm(cty ~ hwy + class,data = mpg)
m$assign 
  [1] 0 1 2 2 2 2 2 2
# Note how there is six 2's to represent the indicator variables
# for the various 'class' levels. (class has 7 levels)

您将看到定量预测值只有一个值(
hwy
),因为它们在设计公式中由一个术语表示。

计算此字段的代码在哪里?我现在还没找到。啊,我现在明白了。奇怪的是,
$assign
不在
lm
glm
的源代码中。我还没有找到原因,但我会继续查找。计算此字段的代码在哪里?我现在还没找到。啊,我现在明白了。奇怪的是,
$assign
不在
lm
glm
的源代码中。我还没有找到原因,但我会继续寻找。可笑的是,在
?lm
…中根本没有提到这一点。。。不得不花20分钟追踪
assign
最初来自哪里。可笑的是
?lm
中根本没有提到这一点。。。必须花20分钟追踪
assign
最初的来源。