如何在R中使用数据头作为变量名
我试图在如何在R中使用数据头作为变量名,r,variables,header,R,Variables,Header,我试图在R中运行逐步回归,其中包含600多个变量,作为.csv文件头中的列名 如何将列名用作回归方程中的变量 我对这一点非常陌生,我对它的理解有限,我可以将该列保存为列表,并将其用于运行glm eg model.1如果您正确读取了数据(如上面评论中指定的header=TRUE),那么您应该得到一个600多列的数据框(1列表示x响应,一列表示每个预测变量):我现在称之为mydata。在这种情况下,正如@Tylerlinker建议的那样,您可以只包含所有预测值:glm(x~,data=mydata,
R
中运行逐步回归,其中包含600多个变量,作为.csv文件头中的列名
如何将列名用作回归方程中的变量
我对这一点非常陌生,我对它的理解有限,我可以将该列保存为列表,并将其用于运行glm eg
model.1如果您正确读取了数据(如上面评论中指定的header=TRUE
),那么您应该得到一个600多列的数据框(1列表示x
响应,一列表示每个预测变量):我现在称之为mydata
。在这种情况下,正如@Tylerlinker建议的那样,您可以只包含所有预测值:glm(x~,data=mydata,family=poisson)
(logit链接是默认链接;如果您想明确指定它,可以说glm(x~,data=mydata,family=poisson(link=“logit”))
。然后可以使用批量包装中的step
或stepAIC
然而,我必须补充一点,除非你知道自己在做什么,否则从统计学的角度来看,对600个变量进行逐步回归是一个非常非常糟糕的想法(谷歌类似“逐步回归问题”或“逐步回归哈勒尔”)。我强烈建议您看看类似于glmnet
的软件包,该软件包采用了一种更合理的方法来使用大量预测值进行建模。如果您正确读取了数据(例如,如上面注释中指定的header=TRUE
),您应该得到一个600+列的数据框(1列对应于x
响应,1列对应于每个预测变量):我现在称之为mydata
。在这种情况下,正如@Tylerlinker建议的那样,您可以包括所有预测变量:glm(x~,data=mydata,family=poisson)
(logit链接是默认链接;如果要明确指定它,可以说glm(x~,data=mydata,family=poisson(link=“logit”))
。然后可以使用MASS包中的step
或stepAIC
然而,我必须补充一点,除非你知道自己在做什么,否则从统计学的角度来看,对600个变量进行逐步回归是一个非常非常糟糕的想法(谷歌类似“逐步回归问题”或“逐步回归哈勒尔”)。我强烈建议您看看类似于glmnet
的软件包,它采用了一种更合理的方法来使用大量预测值进行建模。也许您不必使用~。
而使用:lm(mpg~,data=mtcars)
当您使用选项header=TRUE
将文件读入R时,列名就是变量名。也许您不必使用~。
而使用:lm(mpg~,data=mtcars)
当您使用选项header=TRUE将文件读入R时,列名就是变量名。谢谢@Tyler,@Patrick!@Ben!谢谢您提供的其他建议,正如您正确指出的那样,循序渐进不是一个好主意。我已经探索了glmnet包,它看起来对我的工作非常有希望。谢谢@Tyler,@Patrick!@Ben!感谢您提供更多的建议,正如您正确地指出的,循序渐进不是一个好主意。我已经探索了glmnet软件包,它看起来对我的工作非常有希望。