简体   繁体   English

如何使用向量作为我的预测变量来运行多元线性回归?

[英]How do I run a multiple linear regression using a vector as my predictors?

I'm hoping to do something like this: 我希望做这样的事情:

data = read.table("mydata.txt", header=T)[,-1]
test<-c("Piggies","Epstein","Majesty","Millionmiles","Mozambique","Deadpool","Blackbird","SamStonev2","Daytripper","Starr","Yellowsubmarine","Harrison","Taxman","Carey","Baez","Finn","Glassonionv2","Weight","Jericho","Monkey","Maggiemae","Cinnamongirl","Walrus","Anna","Handydandy","Pam","Wigwam","Psylocke","Coolwater","Wallflower","Cactustree","Hoist","Baronharkonnen","Coyote","BlueJay","NeilYoung","Harvest","KittyPryde","Beatles","Jam_session","Black_Crow","Carnival","Tombstone_blues","Sun_King","EmmaFrost","Sway","GhanimaAtreides","Heartland","Siona","Percy","Julia","Trouble","Sol_49","C21","Sol_18","i_126","i_114","Sol_6","Sinv_25","Sol_M3","Sol_20","Sol_42f","C316","C204","i_120_PigTail","C234","C368_PigTail","i_135","C1","C121_PigTail","C264","C367","Sinv12","C278_PT","i_125_PT","C485","Jerry_Garcia","C259","i_113","i_127","cassidy_PigTail","Sol_11","Jackstraw_PigTail","st_stephen","red_ant","sunrise","i_109","C216_pigtail","i129")
fit1 <- lm(data$QnWeight_initial_mg ~ data$test)

Instead of having to do this: 而不是必须这样做:

fit1 <- lm(data$QnWeight_initial_mg ~ data$Piggies+data$Epstein+data$Majesty+data$Millionmiles+data$Mozambique+data$Deadpool+data$Blackbird+data$SamStonev2+data$Daytripper+data$Starr+data$Yellowsubmarine+data$Harrison+data$Taxman+data$Carey+data$Baez+data$Finn+data$Glassonionv2+data$Weight+data$Jericho+data$Monkey+data$Maggiemae+data$Cinnamongirl+data$Walrus+data$Anna+data$Handydandy+data$Pam+data$Wigwam+data$Psylocke+data$Coolwater+data$Wallflower+data$Cactustree+data$Hoist+data$Baronharkonnen+data$Coyote+data$BlueJay+data$NeilYoung+data$Harvest+data$KittyPryde+data$Beatles+data$Jam_session+data$Black_Crow+data$Carnival+data$Tombstone_blues+data$Sun_King+data$EmmaFrost+data$Sway+data$GhanimaAtreides+data$Heartland+data$Siona+data$Percy+data$Julia+data$Trouble+data$Sol_49+data$C21+data$Sol_18+data$i_126+data$i_114+data$Sol_6+data$Sinv_25+data$Sol_M3+data$Sol_20+data$Sol_42f+data$C316+data$C204+data$i_120_PigTail+data$C234+data$C368_PigTail+data$i_135+data$C1+data$C121_PigTail+data$C264+data$C367+data$Sinv12+data$C278_PT+data$i_125_PT+data$C485+data$Jerry_Garcia+data$C259+data$i_113+data$i_127+data$cassidy_PigTail+data$Sol_11+data$Jackstraw_PigTail+data$st_stephen+data$red_ant+data$sunrise+data$i_109+data$C216_pigtail+data$i129)

I hope that my question makes sense! 我希望我的问题有道理! Thanks so much, guys! 非常感谢,伙计们!

Well, that seems, that you need to use model <- lm(data=data,formula=QnWeight~.) . 那么,似乎你需要使用model <- lm(data=data,formula=QnWeight~.) Here . 在这里. (dot) in formula means to take all factors into account. 公式中的(点)表示考虑所有因素。

If you want to use not all factors an maybe create formula dynamicly use as.formula for this: 如果您不想使用所有因素,可以创建公式动态地使用as.formula

> test <- c("Piggies","Epstein","Majesty","Millionmiles","Mozambique","Deadpool","Blackbird","SamStonev2","Daytripper","Starr","Yellowsubmarine","Harrison","Taxman","Carey","Baez","Finn","Glassonionv2","Weight","Jericho","Monkey","Maggiemae","Cinnamongirl","Walrus","Anna","Handydandy","Pam","Wigwam","Psylocke","Coolwater","Wallflower","Cactustree","Hoist","Baronharkonnen","Coyote","BlueJay","NeilYoung","Harvest","KittyPryde","Beatles","Jam_session","Black_Crow","Carnival","Tombstone_blues","Sun_King","EmmaFrost","Sway","GhanimaAtreides","Heartland","Siona","Percy","Julia","Trouble","Sol_49","C21","Sol_18","i_126","i_114","Sol_6","Sinv_25","Sol_M3","Sol_20","Sol_42f","C316","C204","i_120_PigTail","C234","C368_PigTail","i_135","C1","C121_PigTail","C264","C367","Sinv12","C278_PT","i_125_PT","C485","Jerry_Garcia","C259","i_113","i_127","cassidy_PigTail","Sol_11","Jackstraw_PigTail","st_stephen","red_ant","sunrise","i_109","C216_pigtail","i129")
> as.formula(paste("QnWeight~",paste(listoffactors,collapse="+")))
QnWeight ~ Piggies + Epstein + ... + i129
> model <- lm(data=data, formula = as.formula(paste("QnWeight~",paste(listoffactors,collapse="+")))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在R中:如何在交互的预测变量上运行多元线性回归,而不对未交互的变量进行回归? - In R: How do I run a multiple linear regression on interacted predictors without regressing on the variables not interacted? 如何在 R 循环中更改线性回归中的预测变量? - How do I change predictors in linear regression in loop in R? 如何为多个不同的响应和预测变量运行分段线性回归,其中响应在不同的时间开始? - How to run piecewise linear regression for multiple different responses and predictors, where responses start at different times? 如何将多个线性回归方程添加到 ggplot 的底部? - How do I add multiple linear regression equations to the bottom of a ggplot? 如何将多个线性回归斜率输出到新列表? - How do I output multiple linear regression slopes to new list? 使用时间滞后预测变量(自变量)进行预测的线性回归 - Linear regression using time lagged predictors (independent variables) for forecasting purpose 使用循环拟合具有不同预测变量的线性回归模型 - fitting linear regression models with different predictors using loops 如何将矩阵的仅一行转换为向量,以便可以对其进行线性回归? - How to turn just one row of a matrix into a vector so I can do a linear regression on it? 如何进行线性回归? - How to do this linear regression? 使用 MICE 进行多重插补后,如何使用 lm() 在 R 中的子集上运行线性回归 - How to run a linear regression using lm() on a subset in R after multiple imputation using MICE
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM